3 回答

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊
您需要?jiǎng)?chuàng)建一個(gè)包含所有存儲(chǔ)過(guò)程屬性的模型類,如下所示。另外,由于Entity Framework模型類需要主鍵,因此可以使用Guid創(chuàng)建假密鑰。
public class GetFunctionByID
{
[Key]
public Guid? GetFunctionByID { get; set; }
// All the other properties.
}
然后在中注冊(cè)GetFunctionByID模型類DbContext。
public class FunctionsContext : BaseContext<FunctionsContext>
{
public DbSet<App_Functions> Functions { get; set; }
public DbSet<GetFunctionByID> GetFunctionByIds {get;set;}
}
調(diào)用存儲(chǔ)過(guò)程時(shí),請(qǐng)參見(jiàn)以下內(nèi)容:
var functionId = yourIdParameter;
var result = db.Database.SqlQuery<GetFunctionByID>("GetFunctionByID @FunctionId", new SqlParameter("@FunctionId", functionId)).ToList());

TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超8個(gè)贊
您可以使用SqlQuery(參見(jiàn)此處)調(diào)用存儲(chǔ)過(guò)程。
// Prepare the query
var query = context.Functions.SqlQuery(
"EXEC [dbo].[GetFunctionByID] @p1",
new SqlParameter("p1", 200));
// add NoTracking() if required
// Fetch the results
var result = query.ToList();

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超5個(gè)贊
導(dǎo)入存儲(chǔ)過(guò)程后,可以通過(guò)函數(shù)之類的參數(shù)創(chuàng)建存儲(chǔ)過(guò)程的對(duì)象
using (var entity = new FunctionsContext())
{
var DBdata = entity.GetFunctionByID(5).ToList<Functions>();
}
或者你也可以使用 SqlQuery
using (var entity = new FunctionsContext())
{
var Parameter = new SqlParameter {
ParameterName = "FunctionId",
Value = 5
};
var DBdata = entity.Database.SqlQuery<Course>("exec GetFunctionByID @FunctionId ", Parameter).ToList<Functions>();
}
- 3 回答
- 0 關(guān)注
- 389 瀏覽
添加回答
舉報(bào)