C#LINQ到SQL多重选择
我知道了,它在我的MS SQL 2008数据库中调用一个SP:C#LINQ到SQL多重选择,c#,sql-server,linq-to-sql,stored-procedures,select,C#,Sql Server,Linq To Sql,Stored Procedures,Select,我知道了,它在我的MS SQL 2008数据库中调用一个SP: [Function(Name = "dbo.Content_GetContent")] [ResultType(typeof(Content_GetContentResult))] [ResultType(typeof(Content_GetContentImagesResult))] [ResultType(typeof(Content_GetContentBoxesResult))] [Resul
[Function(Name = "dbo.Content_GetContent")]
[ResultType(typeof(Content_GetContentResult))]
[ResultType(typeof(Content_GetContentImagesResult))]
[ResultType(typeof(Content_GetContentBoxesResult))]
[ResultType(typeof(Content_GetContentSearchWordsResult))]
public IMultipleResults GetContent([Parameter(DbType = "INT")]int? contentID)
{
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), contentID);
return ((IMultipleResults)(result.ReturnValue));
}
但我遇到了两个问题,不是每个表都会返回结果,如果提供的contentID不正确(不是有效的内容编号),那么它将失败并生成以下错误:
“为不返回IMultipleResults的函数'GetContent'声明了多个结果类型。”
有什么办法解决这个问题吗?能否更改存储过程,以便在提供不正确的contentID时返回空表?(而不是返回消息或它此刻所做的任何事情) 如果您的存储过程不能保证每次返回相同数量的表,那么您将面临一个棘手的问题:确定哪些表被返回了