簡體   English   中英

實體框架核心DBContext數據模型為變量

[英]Entity Framework Core DBContext Datamodel as variable

我正在嘗試使用Entity Framework Core在ASP.NET Core 2中使用REST API服務創建通用列表供稿。 我想輸入一個字符串,該字符串將確定供稿使用的表。 我在初始化通用DBContext.DataModel變量時遇到麻煩,該變量稍后可以為linq命令分配_context.Model。 這將由我的控制器調用。

public class ServiceRepository : IServiceRepository

    private readonly MyDataDbContext _context

    public ServiceRepository(MyDataDbContext context){
        _context = context;
    }
    public async Task<IEmumerable<GenericFeedResource>> GetFeed(string feedType){
        var feed = new ???  (What object to use?)

        switch(feedType)
            {
            case: "Feed1": feed = _context.Model1;
                break;
            ...
            }

        var data = await feed.Where(f => f.Inactive == false).ToListAync();

        ... var result = formatting of data

        return result;
}

如果上下文有一組表,每個表都針對實現相同基類的對象類型,則可以使用.Cast<T>()擴展名。

IEmumerable<GenericFeedResource> feed;

switch(feedType)
{
    case: "Feed1": 
        feed = _context.Model1.Cast<GenericFeedResource>();
        break;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM