C# 连接到同一个“中的不同连接字符串”;使用;
我有一个模型有两个不同的列表,如:C# 连接到同一个“中的不同连接字符串”;使用;,c#,asp.net-core,dapper,C#,Asp.net Core,Dapper,我有一个模型有两个不同的列表,如: public IList<PurchaseOrderPreliminaryDesignModel> DesignList { get; set; } = new List<PurchaseOrderPreliminaryDesignModel>(); public IList<PurchaseOrderPreliminaryVendorModel> VendorList { get; set; } = n
public IList<PurchaseOrderPreliminaryDesignModel> DesignList { get; set; } = new List<PurchaseOrderPreliminaryDesignModel>();
public IList<PurchaseOrderPreliminaryVendorModel> VendorList { get; set; } = new List<PurchaseOrderPreliminaryVendorModel>();
public PurchaseOrderPreliminaryDesignViewModel AddDesignList(IEnumerable<PurchaseOrderPreliminaryDesignModel> model)
{
((List<PurchaseOrderPreliminaryDesignModel>)DesignList).AddRange(model);
return this;
}
public PurchaseOrderPreliminaryDesignViewModel AddVendorList (IEnumerable<PurchaseOrderPreliminaryVendorModel> model)
{
((List<PurchaseOrderPreliminaryVendorModel>)VendorList).AddRange(model);
return this;
}
然后作为回报,使用如下:
rModel.AddDesignList(designList).AddVendorList(vendorList);
return rModel;
我怎样才能做到这一点?问候- 您可以使用双基于
public PurchaseOrderPreliminaryDesignViewModel GetPreliminaryDesignList(字符串jobNumber)
{
尝试
{
PurchaseOrderPreliminaryDesignViewModel DoGetDesigns()
{
使用(var connection=_connectionManager.GetOpenConnection(_configuration.GetConnectionString(FirstConnectionString)))
使用(var connection2=_connectionManager.GetOpenConnection(_configuration.GetConnectionString(SecondConnectionString)))
{
var rModel=new PurchaseOrderPreliminaryDesignViewModel();
var designList=connection.Query(“[dbo].[usp\u PurchaseOrder\u premium\u Design]”,参数:new
{
LegacyKey=jobNumber
},commandType:commandType.StoredProcess);
var vendorList=connection2.Query(“mystore”,参数:new
{
参数=作业编号
},commandType:commandType.StoredProcess);
rModel.AddDesignList(设计列表).AddVendorList(供应商列表);
返回rModel;
}
}
返回DoGetDesigns();
}
捕获(例外情况除外)
{
掷骰子;
}
}
- 您可以使用双基于
public PurchaseOrderPreliminaryDesignViewModel GetPreliminaryDesignList(字符串jobNumber)
{
尝试
{
PurchaseOrderPreliminaryDesignViewModel DoGetDesigns()
{
使用(var connection=_connectionManager.GetOpenConnection(_configuration.GetConnectionString(FirstConnectionString)))
使用(var connection2=_connectionManager.GetOpenConnection(_configuration.GetConnectionString(SecondConnectionString)))
{
var rModel=new PurchaseOrderPreliminaryDesignViewModel();
var designList=connection.Query(“[dbo].[usp\u PurchaseOrder\u premium\u Design]”,参数:new
{
LegacyKey=jobNumber
},commandType:commandType.StoredProcess);
var vendorList=connection2.Query(“mystore”,参数:new
{
参数=作业编号
},commandType:commandType.StoredProcess);
rModel.AddDesignList(设计列表).AddVendorList(供应商列表);
返回rModel;
}
}
返回DoGetDesigns();
}
捕获(例外情况除外)
{
掷骰子;
}
}
Q:这是“经典”ASP.Net还是ASP.Net核心?问:你在使用EF吗?你确定你在使用EF吗?这段代码看起来更简洁。无论如何,为什么不将连接字符串传递给方法,甚至传递给连接对象呢?这里有一千种方法可以更改连接字符串。Asp.net core与dapperQ:这是“经典”的Asp.net还是Asp.net core?问:你在使用EF吗?你确定你在使用EF吗?这段代码看起来更简洁。无论如何,为什么不将连接字符串传递给方法,甚至传递给连接对象呢?这里有一千种方法可以更改连接字符串。Asp.net core使用dapper
var vendorList = connection2.Query<PurchaseOrderPreliminaryVendorModel>("mystore", param: new
{
Parameter = jobNumber
}, commandType: CommandType.StoredProcedure);
rModel.AddDesignList(designList).AddVendorList(vendorList);
return rModel;
public PurchaseOrderPreliminaryDesignViewModel GetPreliminaryDesignList(string jobNumber)
{
try
{
PurchaseOrderPreliminaryDesignViewModel DoGetDesigns()
{
using (var connection = _connectionManager.GetOpenConnection(_configuration.GetConnectionString(FirstConnectionString)))
using (var connection2 = _connectionManager.GetOpenConnection(_configuration.GetConnectionString(SecondConnectionString)))
{
var rModel = new PurchaseOrderPreliminaryDesignViewModel();
var designList = connection.Query<PurchaseOrderPreliminaryDesignModel>("[dbo].[usp_PurchaseOrder_Preliminary_Design]", param: new
{
LegacyKey = jobNumber
}, commandType: CommandType.StoredProcedure);
var vendorList = connection2.Query<PurchaseOrderPreliminaryVendorModel>("mystore", param: new
{
Parameter = jobNumber
}, commandType: CommandType.StoredProcedure);
rModel.AddDesignList(designList).AddVendorList(vendorList);
return rModel;
}
}
return DoGetDesigns();
}
catch (Exception ex)
{
throw ex;
}
}