c# - LINQ On DbContext.Set() -



c# - LINQ On DbContext.Set() -

so, trying dbset returned entity name (string). how far have gotten:

var customers = db.set(type.gettype("app.model.customer, app.model, version=1.0.0.0, culture=neutral, publickeytoken=null"));

but cannot perform other linq any() or single(). why , how can alter so?

the non-generic overload of dbcontext.set returns as non-generic dbset. 1 of interfaces class implements iqueryable, again, non generic. that's reason why can't serve input of these linq extension method defined on generic type iqueryable<t>.

so in fact, if still want utilize linq, postpone moment when have convert generic iqueryable. could do...

var customers = db.set(type.gettype(...)).cast<customer>().where(c => ...)

...but of course of study lose whole point of defining type dynamically, @ runtime.

once start dynamically, have go on dynamically. 1 way adding system.linq.dynamic project. can write queries like...

var customers = db.set(type.gettype(...)).where("customerid = @0", 1);

...which homecoming customer (wrapped in iqueryable<customer>) having customerid == 1.

you can utilize find method:

var client = db.set(type.gettype(...)).find(1);

this homecoming single customer instance.

c# linq entity-framework reflection

Comments

Popular posts from this blog

xslt - DocBook 5 to PDF transform failing with error: "fo:flow" is missing child elements. Required content model: marker* -

mediawiki - How do I insert tables inside infoboxes on Wikia pages? -

Local Service User Logged into Windows -