大佬教程收集整理的这篇文章主要介绍了EF6:DbContext.Database.Connection.ConnectionString 在调用 ExecuteSqlCommand 后发生变化,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 EF6 DbContext
中观察到一个奇怪的行为。我的自定义 DbContext
类从我的 App.config 中读取其连接字符串:
public partial class WorkobjectContext : DbContext
{
public WorkobjectContext()
: base("name=MainConnectionString")
{
// Set the initializer to null to disablE intializtion otherwise EF trIEs to create the table if it does not exist (CreateDatabaseIfNotExists)
Database.SeTinitializer<WorkobjectContext>(null);
}
}
因为我对 Ado.NET 函数使用相同的连接字符串,所以我尝试从 DbContext
中读取连接字符串:
var connectionString = this.MyContext.Database.Connection.ConnectionString;
但现在我观察到 this.MyContext.Database.Connection.ConnectionString
在我调用 ExecuteCommand
时发生了变化:
...
Console.Writeline(this.WorkobjectContext.Database.Connection.ConnectionString);
// Output: DATA sourcE=XXXX:1000/XXXX.XXXX;passworD=Mypassword;USER ID=MyUserID
var ret = this.WorkobjectContext.Database.ExecutesqlCommand(
"BEGIN WPK_InBox.check_WOB_User(:pn_UserID,:pn_WOBID,:pn_Return,:pvErrorMsg,:pnErrorCodE); end;",new object[]
{
userIDParameter,wobIDParameter,returnValueParameter,errorMsgParameter,errorCodeParameter
}
);
Console.Writeline(this.WorkobjectContext.Database.Connection.ConnectionString);
// Output: DATA sourcE=XXXX:1000/XXXX.XXXX;PUSER ID=MyUserID
如您所见,调用 ExecutesqlCommand
后,连接字符串发生变化,密码部分消失。
为什么会这样?这是一个错误吗?
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的EF6:DbContext.Database.Connection.ConnectionString 在调用 ExecuteSqlCommand 后发生变化全部内容,希望文章能够帮你解决EF6:DbContext.Database.Connection.ConnectionString 在调用 ExecuteSqlCommand 后发生变化所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。