Subsonic : Can’t decide which property to consider the Key? foreign key issue.
Posted
by AJ
on Stack Overflow
See other posts from Stack Overflow
or by AJ
Published on 2009-11-30T22:57:33Z
Indexed on
2010/05/20
20:20 UTC
Read the original article
Hit count: 998
Hi
I am trying to select count of rows from a table which has foreign keys of two tables. The C# code threw the error mentioned below. So, I added a primary key column to the table (schema as follows) and regenerated the code. But still the same error is coming.
Error : Can't decide which property to consider the Key - you can create one called 'ID' or mark one with SubSonicPrimaryKey attribute
sqLite Table schema
CREATE TABLE "AlbumDocuments" ("Id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , "AlbumId" INTEGER NOT NULL CONSTRAINT fk_AlbumId REFERENCES Albums(Id) ,
"DocumentId" INTEGER NOT NULL CONSTRAINT fk_DocumentId REFERENCES Documents(Id))
C# code
int selectAlbumDocumentsCount = new SubSonic.Query.Select()
.From<DocSafeDB.DataLayer.AlbumDocumentsTable>()
.Where(DocSafeDB.DataLayer.AlbumDocumentsTable.AlbumIdColumn).In(request.AlbumId)
.Execute();
Not sure what I should be doing next as I can't do where against primary key because I don;t have that info. So my questions are:
How do I select count of rows against foreign key column?
Is primary key required in this scenario?
I have several things but not sure why its not working. To me it looks like a very normal use case. Please advise.
Thanks AJ
© Stack Overflow or respective owner