这是我用来从数据库中获取数据的示例代码:在DAO层:
public IEnumerable<IDataRecord> GetDATA(ICommonSearchCriteriaDto commonSearchCriteriaDto)
{
using(DbContext)
{
DbDataReader reader = DbContext.GetReader("ABC_PACKAGE.GET_DATA", oracleParams.ToArray(), CommandType.StoredProcedure);
while (reader.Read())
{
yield return reader;
}
}
}
Run Code Online (Sandbox Code Playgroud)
在BO层我调用上面的方法,如:
List<IGridDataDto> GridDataDtos = MapMultiple(_costDriversGraphDao.GetGraphData(commonSearchCriteriaDto)).ToList();
Run Code Online (Sandbox Code Playgroud)
在mapper层上MapMultiple方法的定义如下:
public IGridDataDto MapSingle(IDataRecord dataRecord)
{
return new GridDataDto
{
Code = Convert.ToString(dataRecord["Code"]),
Name = Convert.ToString(dataRecord["Name"]),
Type = Convert.ToString(dataRecord["Type"])
};
}
public IEnumerable<IGridDataDto> MapMultiple(IEnumerable<IDataRecord> dataRecords)
{
return dataRecords.Select(MapSingle);
}
Run Code Online (Sandbox Code Playgroud)
上面的代码运行良好,但我想知道上述代码的两个问题.
我知道'@'关键字在C#中用于不同的目的,如这里所讨论的,但我的问题是不同的.
假设我用来@ConfigurationManager.AppSetting["DbConnectionString"]代替ConfigurationManager.AppSetting["DbConnectionString"].它仍然以相同的方式工作.
所以我的问题是:
为了更清楚,我想再添加一个示例:
假设,我有一个'ConfigurationLoader'具有静态函数的类'GetConfigurations'返回一个字符串列表.
然后,我可以称之为List<string> ConnectionStrs=ConfigurationLoader.GetConfigurations();.
如果我这样做List<string> ConnectionStrs=@ConfigurationLoader.GetConfigurations();它仍然会给出相同的结果.在这样的场景中,我问上面两个问题.
有没有办法使用javascript分配会话值
我可以从会话中检索值但分配不起作用
var TempSession = '<%= Convert.ToInt32(Session["Status"]) %>';
if(TempSession ==6)
{
alert(TempSession );
TempSession =1;
}
Run Code Online (Sandbox Code Playgroud) 我使用以下 Select 语句来检索和计算多个表中每个字段的总数。但是,当执行该语句时,我收到错误“单词 join 处或附近的语法错误”
任何帮助将不胜感激
询问:
Select CompanyStatus,Companyname,
INNER JOIN Company on usersincompany.companyID=company.companyID,
INNER JOIN company on users.companyID=Company.companyID,
INNER JOIN usersincompany on users.userid=usersincompany.userid,
INNER JOIN users on userstatus.userstatudid=users.userstatusid,
INNER JOIN users on project.companyid=users.companyid,
INNER JOIN users on usersession.userid=users.userid,
INNER JOIN project on template.projectid=project.projectid,
INNER JOIN project on merchendisingarea.projectid=project.projectid,
INNER JOIN merchendisingarea on publishstatus.publishstatusid=merchendisingarea.publishstatusid,
INNER JOIN template on merchendisingmodule.templateid=template.templateid,
INNER JOIN company on companyaccountclassification.classificationtypeid=company.classificationtypeid,
sum(distinct users.userid) as TotalUsers,
sum(case when users.userstatusid =2 then 1 else 0 end) as Activeusers,
sum(case …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,我需要下载一个文件,所以我使用这段代码:
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", "attachment; filename =" + strFileName + ".xls");
Response.TransmitFile(strFilePath);
Response.End();
Run Code Online (Sandbox Code Playgroud)
在Response.End()我收到一个错误ThreadAbortException
为了避免这个错误,我试图使用httpApplication.CompleteRequest(),但我也无法使用它.
httpApplication.CompleteRequest()的代码如下,
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", "attachment; filename =" + strFileName + ".xls");
Response.TransmitFile(strFilePath);
HttpApplication.CompleteRequest();
Run Code Online (Sandbox Code Playgroud)
我在使用HttpApplication.CompleteRequest()时遇到此错误
An object reference is required for the non-static field, method, or property 'System.Web.HttpApplication.CompleteRequest()'
Run Code Online (Sandbox Code Playgroud)
我希望我能够清楚地表达我的怀疑......帮助我......