我有两个使用集成安全性的应用程序.一个分配Integrated Security = true连接字符串,另一个分配Integrated Security = SSPI.
是什么区别SSPI,并true在集成安全性的情况下?
var connection = ConnectionFactory.GetConnection(
ConfigurationManager.ConnectionStrings["Test"]
.ConnectionString, DataBaseProvider);
Run Code Online (Sandbox Code Playgroud)
这是我的App.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Run Code Online (Sandbox Code Playgroud)
但是当我的项目运行时,这是我的错误:
你调用的对象是空的.
当使用需要超过30秒才能完成的函数导入时,我将使用实体框架(EF)获得超时.我尝试了以下操作,但无法解决此问题:
我添加Default Command Timeout=300000到项目中App.Config文件中的连接字符串,该文件具有此处建议的EDMX文件.
这是我的连接字符串的样子:
<add
name="MyEntityConnectionString"
connectionString="metadata=res://*/MyEntities.csdl|res://*/MyEntities.ssdl|
res://*/MyEntities.msl;
provider=System.Data.SqlClient;provider connection string="
Data Source=trekdevbox;Initial Catalog=StarTrekDatabase;
Persist Security Info=True;User ID=JamesTKirk;Password=IsFriendsWithSpock;
MultipleActiveResultSets=True;Default Command Timeout=300000;""
providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)
我尝试直接在我的存储库中设置CommandTimeout,如下所示:
private TrekEntities context = new TrekEntities();
public IEnumerable<TrekMatches> GetKirksFriends()
{
this.context.CommandTimeout = 180;
return this.context.GetKirksFriends();
}
Run Code Online (Sandbox Code Playgroud)
我还能做些什么来让EF超时?这仅适用于非常大的数据集.小数据集一切正常.
这是我得到的错误之一:
System.Data.EntityCommandExecutionException:执行命令定义时发生错误.有关详细信息,请参阅内部异常 ---> System.Data.SqlClient.SqlException:超时已过期.操作完成之前经过的超时时间或服务器没有响应.
好的 - 我得到了这个工作,发生了什么事很愚蠢.我有连接字符串Default Command Timeout=300000和CommandTimeout设置为180.当我Default Command Timeout从连接字符串中删除它,它工作.所以答案是在上下文对象的存储库中手动设置CommandTimeout,如下所示:
this.context.CommandTimeout = 180;
Run Code Online (Sandbox Code Playgroud)
显然在连接字符串中设置超时设置对它没有影响.
c# asp.net entity-framework connection-string entity-framework-4
如何从web.config文件中读取连接字符串到类库中包含的公共类?
我试过了:
WebConfigurationManager
ConfigurationManager
Run Code Online (Sandbox Code Playgroud)
但是这些类在我的类库中无法识别.
我有一个使用JDBC(通过JPA)的Java应用程序,它使用主机名,端口和Oracle SID连接到开发数据库,如下所示:
JDBC:神谕:薄:@ oracle.hostserver1.mydomain.ca:1521:XYZ
XYZ是Oracle SID.现在我需要连接到不使用SID的不同Oracle数据库,而是使用Oracle"服务名称".
我试过这个,但它不起作用:
JDBC:神谕:薄:@ oracle.hostserver2.mydomain.ca:1522:ABCD
ABCD是另一个数据库的服务名称.
我究竟做错了什么?
我正在初始化实体框架对象上下文,这给了我关键字不支持错误:
metadata=res://*/MainDB.csdl|res://*/MainDB.ssdl|res://*/MainDB.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Workspace\vs\Leftouch\Leftouch.Web\Data\Leftouch.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;App=EntityFramework"
我直接从web.config中获取了连接字符串,并且只修改了文件的路径(我动态设置),而不是使用默认值,显式使用了这个连接字符串.什么可能导致此错误?
我正在创建一个网站,但在数据库中我使用Windows身份验证.
我知道您使用它进行SQL身份验证
<connectionStrings>
<add name="NorthwindContex"
connectionString="data source=localhost;
initial catalog=northwind;persist security info=True;
user id=sa;password=P@ssw0rd"
providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
如何修改它以使用Windows身份验证?
我最近不得不编辑我的app.config文件来更改Entity Framework数据模型(.edmx文件)的连接字符串.但我想知道:有没有办法使用设计器编辑EF连接字符串?
原始连接字符串由"实体数据模型"向导自动生成.然后无法更改连接字符串 - 它在.edmx设计器的属性窗口中保持禁用状态.如果我可以(在app.config中),我喜欢避免手动编辑XML,所以我想知道是否有办法重新进入原始向导屏幕以更改连接字符串并让工具编辑app.config文件为了我.
entity-framework connection-string app-config entity-framework-4
我是JDBC新手,我正在尝试连接MySQL数据库.我正在使用Connector/J驱动程序,但我找不到我的Class.forName()方法的JDBC连接字符串.
我是SqlServer的新手,现在我已SqlLocalDb安装在本地工作.很好,但我通常可以看到两个连接字符串,两者都有效:
Data Source=(localdb)\v11.0;Integrated Security=true;
Run Code Online (Sandbox Code Playgroud)
和
Server=(localdb)\v11.0;Integrated Security=true;
Run Code Online (Sandbox Code Playgroud)
这两者之间究竟有什么区别?
c# ×3
.net ×2
app-config ×2
asp.net ×2
jdbc ×2
sql-server ×2
ado.net ×1
asp.net-mvc ×1
java ×1
localdb ×1
mysql ×1
oracle ×1
security ×1
service-name ×1
web-config ×1