我正在查詢數據庫以獲取contractorid字段值,該值將返回一個值或null。 我需要將它作爲整數傳遞給類方法(int,int)。但顯然它不符合最好的超載方法。我懷疑它是因爲int?
contractorid值可能爲空,無法轉換爲整數。但是,如果我刪除?
,只使用整數,那麼我得到錯誤有關single()
方法在LINQC#LINQ存儲int? as int
int UserID = new BussinessComponent().LoginDetails.UserID;
using (var db = new DataContext())
{
int? ContractorID =
db
.Users
.Where(x => x.UserID == UserID)
.Select(x => x.ContractorID)
.Single();
ltlOJ.Text = DashboardComponent.GetJobs(UserID,ContractorID).ToString();
}
嘗試SingleOrDefault() – ssilas777 2014-09-24 09:28:48
將函數調用爲DashboardComponent.GetJobs(UserID,ContractorID ?? 0)。 – Priyank 2014-09-24 09:31:25
@ ssilas777'SingleOrDefault'指的是返回的行數而不是值。所以你可以得到一個值,但這個值可以是'null'。 – 2014-09-24 09:33:15