开发者

Entity Framework - Stored Procedure result as an entity without Primary Key

Please forgive me if this question has been asked and answered already. If so, kindly point me to it. I'm using VS2010 over .Net 3.5 (platform update not in my control)开发者_StackOverflow中文版 with up-to-date Service Packs.

I have a stored proc that will return rows like the following. There is no other column that could function as a Key for this entity; the results look like this :

COUNTRYCODE     QUANTITY
USA             100
UK              250
USA             300
USA             190

and so on.

I followed the steps from http://blogs.microsoft.co.il/blogs/gilf/archive/2009/03/13/mapping-stored-procedure-results-to-a-custom-entity-in-entity-framework.aspx

as well as http://msdn.microsoft.com/en-us/library/cc982038(v=VS.90).aspx

This keeps resulting in the error "Entity Type soAndso has no key defined. Define the Key for this Entity Type"

How do we mitigate this error? I just don't have a need for a primary key here and can't modify the stored procedure. I'm asking SOF as a last resort. Please help. Thank you very much.


If you don't have need for a primary key, then I'm assuming you don't have a requirement to be able to modify this data and submit it back to the server. In this case, you should use a Complex Type instead of an Entity type. Complex types are classes and can serve as DTO's just as well as entities can, but you can't use complex types as basic Insert/Update/Delete objects.

EDIT: It appears that complex types may not be usable in EFv1 (.NET 3.5) except as a means of grouping scalar properties on entity types. Unfortunately EFv1 is vastly inferior to EFv4 and there simply may not be a solution to your problem that involves using the Entity Framework.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜