c# - ASP.NET Web 应用程序命名空间无法识别
问题描述
我创建了一个 ASP.NET Web 应用程序,Web 窗体。
我添加了 EntityFramework 6.2
我已经使用现有数据库中的代码优先映射了数据库
一切都很好,我有所有类的上下文如下:
namespace MyProject.DataModel
{
using System;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
public partial class MyDBEntities : DbContext
{
public MyDBEntities ()
: base("name=MyDBEntities ")
{
}
public virtual DbSet<Adm0> Adm0 { get; set; }
public virtual DbSet<Adm1> Adm1 { get; set; }
public virtual DbSet<Adm2> Adm2 { get; set; }
public virtual DbSet<Country> Countries { get; set; }
...
连接字符串是:
<connectionStrings>
<add name="MyDBEntities" connectionString="data source=10.11.xx.xx;initial catalog=xxxxxx;persist security info=True;user id=xxxx;password=xxxxxx;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
</connectionStrings>
整个项目没有错误,但是如果我尝试访问 DbContext 是没有办法的!命名空间 DataModel 在任何地方都不存在,被完全忽略:
例子:
键入MyProject。Intellisense 不建议使用 DataModel
键入MyProject.DataModel它在 DataModel 上给出错误,说不存在。
为什么??
解决方案
您的解决方案不仅仅是一个项目吗?如果是这样,您应该在要使用 DbContext 的项目和包含它的项目之间添加一个引用。
来自官方文档:
要添加引用,请右键单击解决方案资源管理器中的引用或依赖项节点,然后选择添加引用 源
此外,请确保正在编译包含 DbContext 的项目。
推荐阅读
- python-3.x - how i can do some function after client's push inline keyboard button in telegram chat
- tensorflow - 使用 DeepExplainer 获取 Keras 中具有 tensorflow 后端的 MLP 模型的 shap 值
- react-native - ReactNative,使用 expo 裸工作流有什么好处?
- .net - 我需要用许多表映射一个复杂的类型关系
- google-apps-script - 如何使用 Google Docs 中的 google apps 脚本设置表格中一行的背景颜色?
- angular - Angular ValidatorFn returns, but does not block Form
- google-apps-script - 如何从各种工作表中的各种数据创建多个文件夹?
- c# - 无限递归尝试解析自定义 DI 容器中的类型
- javascript - HTML/CSS 性能:用于大型数据表的 flexbox 与表
- r - 跨数据框中的 3 列应用函数仅返回一列