【问题标题】:Compiler Error Message: CS1061: does not contain a definition (Missing Reference)编译器错误消息:CS1061:不包含定义(缺少参考)
【发布时间】:2018-03-05 20:18:52
【问题描述】:

object 不包含Database 的定义,并且找不到接受object 类型的第一个参数的扩展方法Database(您是否缺少 using 指令或程序集引用?)

用户存储 userStore = new UserStore();

    userStore.Context.Database.Connection = System.Configuration.ConfigurationManager.
        ConnectionStrings["CartDBConnectionString"].ConnectionString;

    UserManager<IdentityUser> manager = new UserManager<IdentityUser>(userStore);

【问题讨论】:

  • 我的 .net 版本是 4.7.02556
  • 尝试理解你从编译器得到的错误信息。您的错误消息表明您正在尝试在代码中使用未正确引用的对象。这很常见,您应该习惯于解决这个问题。 “引用”意味着您必须让该类需要一个库(或 DLL),这通常由“使用”关键字完成。您发布的图片也意味着缺少库,但不一定是您发布的那个。
  • @DaniDev 我已经尝试了几个库,但我如何才能找到确切的库
  • 感谢您接受我的回答。我可以编辑您的问题的标题,以便对其他人(更多)有用吗?
  • @DaniDev 是肯定的。我仍然是初学者..我仍然被这个问题所困扰。但是有了你的回答我想我可以解决它

标签: asp.net entity-framework owin


【解决方案1】:

根据您提供的图像,您缺少对以下库的引用:

Microsoft.AspNet.Identity.EntityFramework

您通常可以通过查找(在 MSDN 中)给您错误的对象来找出您缺少哪个库。在您的情况下(根据您的图像),对象是 IdentityUser 。如果你查一下: IdentityUser

它将指向我上面指出的缺失程序集。

您(首先)需要为您的项目创建对该库的引用:

Adding Reference

然后使用 Using 关键字将其添加到您的代码中: using directive 或者 Using KeyWord

您发布的错误消息:

'object' 不包含'Database' 的定义并且没有扩展名 接受“对象”类型的第一个参数的方法“数据库”可以是 找到(您是否缺少 using 指令或程序集引用?)

有点模棱两可,暗示另一个错误/缺失的参考,但我需要查看触发该消息的代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-07
    • 2016-06-30
    • 2011-08-21
    • 2023-03-20
    • 2018-04-11
    • 1970-01-01
    相关资源
    最近更新 更多