【发布时间】:2015-07-08 21:38:48
【问题描述】:
当我运行我的应用程序时,我在 EntityFramework.dll 中发生了“System.InvalidOperationException”类型的未处理异常。
我的应用程序是使用实体框架代码优先方法的基本 C# 应用程序,我正在尝试连接到数据库。
以下代码用于将数据添加到数据库中(在我将连接字符串添加到 App.Config 文件之前,该代码有效。
static void Main(string[] args)
{
using (var context = new BehaviourContext())
{
Behaviour behaviour = new Behaviour()
{
Name = "test behaviour",
Activation_Threshold = 90,
Currently_Executing = false,
Preconditions_Met = false,
Priority = 0.9f
};
context.Behaviours.Add(behaviour);
context.SaveChanges();
}
}
这是我的上下文类:
public class BehaviourContext: DbContext
{
public BehaviourContext(): base("name=BehaviourConnectionString")
{
}
public DbSet<Behaviour> Behaviours { get; set; }
}
在我添加连接字符串之前,这一切正常:
<connectionStrings>
<add name="BehaviourConnectionString"
connectionString="Data Source=.;Initial Catalog=BehaviourDB-ByConnectionString;Integrated Security=true"
providerName="System.Data.SqlClient"/>
这是我在运行应用程序时得到的完整错误:
EntityFramework.dll 中出现“System.InvalidOperationException”类型的未处理异常
附加信息:创建模型时不能使用上下文。如果在 OnModelCreating 方法中使用上下文,或者多个线程同时访问同一个上下文实例,则可能会引发此异常。请注意,不保证 DbContext 和相关类的实例成员是线程安全的。
任何帮助、提示或提示将不胜感激。 :)
【问题讨论】:
标签: c# entity-framework ef-code-first database-connection connection-string