找不到带有服务应用程序结构.net核心无状态API SNI.dll的EntityFramework错误

问题描述 投票:0回答:1

我正在尝试将.net Web API应用程序迁移到Service app Fabric无状态.net核心API。我想使用实体框架。当我尝试查询数据库表时出现错误“ 无法加载C:\ SfDevCluster \ Data \ _App \ _Node_0 \ DRIHubType_App3 \ MUACAPIPkg.Code.1.0.0 \ x64 \ SNI.dll

我尝试了所有类似添加sqlclient 4.0.0引用的操作,将框架更改为4.6等,但是没有任何效果。

public class DatabaseContext : DbContext
{
       public DatabaseContext(DbContextOptions<DatabaseContext> options) : base(options)
       {

       }
       public DbSet<Pubsuite> Pubsuite { get; set; }
    }
    ==Startup Class code

    services.AddDbContext<DatabaseContext>(opts => opts.UseSqlServer("server=srvername;database=dbname;User ID=user;password=password;"));

    ====Pubsuite class

    public class Pubsuite
    {
         [Key]
         public string username { get; set; }
         public string pubsuites { get; set; }
    }

     public interface IPubsuiteRepository<T>
     {
            IEnumerable<T> GetPubsuites();
     }


     public class PubsuiteRepository : IPubsuiteRepository<Pubsuite>
     {
            readonly DatabaseContext _libraryContext;

            public PubsuiteRepository(DatabaseContext context)
            {
                _libraryContext = context;
            }

            public IEnumerable<Pubsuite> GetPubsuites()
            {
                return _libraryContext.Pubsuite.ToList();
            }
    }

    public class ValuesController : ControllerBase
    {
            private readonly IPubsuiteRepository<Pubsuite> _libraryRepository;

            public ValuesController(IPubsuiteRepository<Pubsuite> libraryRepository)
            {
                _libraryRepository = libraryRepository;
            }

            // GET api/values
            [HttpGet]
            public ActionResult<IEnumerable<string>> Get()
            {
                try
                {
                    IEnumerable<Pubsuite> authors = _libraryRepository.GetPubsuites();
                    return new string[] { "value1", "value2" };
                }
                catch (Exception ex)
                {
                    var mess = ex.Message;
                    return new string[] { mess };
                }

            }
        }
    }

错误:-

IEnumerable authors = _libraryRepository.GetPubsuites();

我在上一行出现错误。

c# asp.net-core asp.net-core-webapi appfabric
1个回答
0
投票

解决上述问题的方法是,只需安装Visual Studio2019。实际上,Microsoft.EntityFrameworkCore.SqlServer,Microsoft.EntityFrameworkCore的最新包是3.1。我认为它更适合2019年。

© www.soinside.com 2019 - 2024. All rights reserved.