在 ELMAH 中,将错误记录到数据库中,您可以编写:
<errorLog type="Elmah.SqlErrorLog, Elmah"
connectionStringName="EducoparkEntities"/>
但是,如果我使用 EntityFramework,这将不起作用,因为 EF 的连接字符串也包含元数据:
<add name="EducoparkEntities" connectionString="metadata=res://*/EducoparkData.csdl|res://*/EducoparkData.ssdl|res://*/EducoparkData.msl;provider=System.Data.SqlClient;provider connection string="Data Source=(Local);Initial Catalog=...;User Id=...;Password=...;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"/>
那么,如何在 Elmah 中使用 EntityFramework 连接字符串?
1
您可以通过实体框架中提供的ConnectionStringBuilder提取数据库连接字符串。
private string ExtractConnectionStringFromEntityConnectionString(string entityConnectionString)
{
// create a entity connection string from the input
EntityConnectionStringBuilder entityBuilder = new EntityConnectionStringBuilder(entityConnectionString);
// read the db connectionstring
return entityBuilder.ProviderConnectionString;
}
2
要将数据库连接字符串插入 Elmah,您必须将其设置为应用程序_启动(在 Global.asax 中)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)