1
我有這個存儲過程,我用它從3個表中獲得金額的總和。我不會從存儲過程中獲得正確的結果
的問題是,我使用LINQ to SQL和當我把這個過程對我的.dbml文件,它有一個 ISingleResult(GetSurplusDataForConsolidationReportResult),我無法得到我想要的款項。
我收到一個空的ReceivablesSurplus列表。
任何想法?
ALTER PROCEDURE [dbo].[GetSurplusDataForConsolidationReport]
@ID INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT SUM(RB.[Amount])
FROM [DBO].[ReceivablesSurplus] RB
WHERE RB.[Cycle] = @ID
SELECT SUM(DL.[Amount])
FROM [DBO].[DilutionsSurplus] DL
WHERE DL.[Cycle] = @ID
SELECT SUM(AC.[Amount])
FROM [DBO].[AccountablesSurplus] AC
WHERE AC.[Cycle] = @ID
END
這是我的.dbml代碼
[global::System.Data.Linq.Mapping.FunctionAttribute(Name="dbo.GetSurplusDataForConsolidationReport")]
public ISingleResult<GetSurplusDataForConsolidationReportResult> GetSurplusDataForConsolidationReport([global::System.Data.Linq.Mapping.ParameterAttribute(Name="ID", DbType="Int")] System.Nullable<int> iD)
{
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), iD);
return ((ISingleResult<GetSurplusDataForConsolidationReportResult>)(result.ReturnValue));
}
你能看到它運行的SQL? –
是獨立運行時給出正確結果的sproc嗎? – AnandPhadke
@AnandPhadke是的,它給出了我想要的結果。 –