我是C#和Entity Framework的新手,我正在尝试编写一个应用程序来提高我的知识。
我想我已经正确设置了所有内容,但我没有遇到任何类型的错误。问题是我无法在Visual Studio 2017中向localDb添加新记录。
有什么想法吗?提前谢谢。
这是我的代码
private void Save_btn_Click(object sender, EventArgs e)
{
var context = new Database1Entities();
var aMemberdef = new Members()
{
FirstName = Name_txt.Text,
LastName = LastName_txt.Text
};
context.Members.Add(aMemberdef);
context.SaveChanges();
}
和我的app.config
:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework"
type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
requirePermission="false" />
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<connectionStrings>
<add name="Database1Entities"
connectionString="metadata=res://*/EF.Model1.csdl|res://*/EF.Model1.ssdl|res://*/EF.Model1.msl;provider=System.Data.SqlClient;provider connection string="data source=(LocalDB)\MSSQLLocalDB; attachdbfilename=|DataDirectory|\Data\Database1.mdf; initial catalog=Database1; integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory
type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient"
type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>
我认为app配置文件中存在一些错误,但连接字符串是由实体框架生成的。所以我被困MyDB Structure
答案 0 :(得分:0)
因为您每次运行localdb时都会将其复制到bin文件夹中。每次您运行/调试时,它都会被覆盖。项目文件夹中的主文件未更新。 有关详细答案: https://social.msdn.microsoft.com/Forums/en-US/393bddc6-0b85-4c27-9475-27172e50d2d9/entity-framework-doesnt-save-new-record-into-database?forum=adodotnetentityframework