use*_*676 2 c# asp.net linq-to-entities
下午好,我遇到了使用C#和Linq to Entities选择两个连接字符串的问题.目前我有两个连接字符串:
<add name="GameHutDBEntities1" connectionString="metadata=res://*/GameHutModel.csdl|res://*/GameHutModel.ssdl|res://*/GameHutModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=EMMANUEL-PC\SQLEXPRESS;Initial Catalog=GameHutDB;user id=GameHutAdmin; password=123;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
<add name="GameHutDBEntities2" connectionString="metadata=res://*/GameHutModel.csdl|res://*/GameHutModel.ssdl|res://*/GameHutModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=EMMANUEL-PC\SQLEXPRESS;Initial Catalog=GameHutDB;user id=test; password=1234;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)
我有两个角色,即Admin和Clerk.如何允许管理员使用第一个连接字符串登录,并且职员将使用第二个连接字符串登录?

改编自这个答案:
string connString;
if(IsAdmin(user))
connString = ConfigurationManager.ConnectionStrings["GameHutDBEntities1"];
else
connString = ConfigurationManager.ConnectionStrings["GameHutDBEntities2"];
using(EntityConnection con = new EntityConnection(connString))
{
using (Entities context = new Entities(con))
{
// Some code here
}
}
Run Code Online (Sandbox Code Playgroud)
如果IsAdmin一个函数接受user并返回true,如果他是一个管理员,则返回true,如果不是,则返回false.
| 归档时间: |
|
| 查看次数: |
694 次 |
| 最近记录: |