1
這是我的存儲過程執行:存儲過程有void類型,而不是返回我期望的結果
ALTER procedure [dbo].[ShowProjectByNameOfPerson]
(@name as nvarchar)
as begin
select Personality.id,COUNT(*) as cnt into #test
from Personality,Project,Personal_project
where Personality.Id = Personal_project.PersonalityId_FK
and Project.Id = Personal_project.ProjectId_FK
and Personality.FullName like N'%'[email protected]+'%'
group by Personality.Id
order by cnt desc
select * from #test,Personality
where #test.id = Personality.id
end
我在ASP.Net創建的LINQ ToSQL類項目project.and我分配的過程將DBML文件。 但是,當我想用做上下文的實例後的過程我得到這個錯誤:
Cannot assign void to an implicitly-typed local variable
No overload for method 'ShowProjectByNameOfPerson'
而且這是在cs文件的存儲過程調用代碼:
DataClassesDataContext db = new DataClassesDataContext();
var lst = db.ShowProjectByNameOfPerson(txt);
哪有我解決這個問題?
感謝高級。
在存儲過程中使用「select *」是個不好的做法。如果表格被改變了,你的程序就無法知道它並且會失敗。如果您專門調出列,則更改不會破壞您的程序。 – Jay
你在程序中使用可空的類型變量嗎? – Jay