第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在實(shí)體框架中使用存儲(chǔ)過(guò)程

在實(shí)體框架中使用存儲(chǔ)過(guò)程

我正在將asp.net mvc 5和C#與Entity Framework一起使用...我具有函數(shù)的模型和領(lǐng)域類...現(xiàn)在我需要使用存儲(chǔ)過(guò)程....我在先編寫(xiě)現(xiàn)有數(shù)據(jù)庫(kù)的代碼,并在其中編寫(xiě)存儲(chǔ)過(guò)程。我的問(wèn)題是如何在Web應(yīng)用程序中調(diào)用該存儲(chǔ)過(guò)程。存儲(chǔ)過(guò)程:ALTER PROCEDURE [dbo].[GetFunctionByID](    @FunctionId INT)ASBEGIN    SELECT *     FROM Functions As Fun    WHERE Function_ID = @FunctionIdEND域類: public class Functions {    public Functions()    {    }    public int Function_ID { get; set; }    public string Title { get; set; }    public int Hierarchy_level { get; set; }}功能型號(hào):[Table("Functions")]public class App_Functions{    public App_Functions()    {    }    [Key]    public int Function_ID { get; set; }    [StringLength(50)]    [Required]    public string Title { get; set; }    public int Hierarchy_level { get; set; }    //public virtual ICollection<App_Controllers> App_Controllers { get; set; }*/}BaseContext:public class BaseContext<TContext> : DbContext where TContext : DbContext{    static BaseContext()    {        Database.SetInitializer<TContext>(null);    }    protected BaseContext()        : base("name = ApplicationDbConnection")    { }}函數(shù)上下文:public class FunctionsContext : BaseContext<FunctionsContext>{    public DbSet<App_Functions> Functions { get; set; }}
查看完整描述

3 回答

?
慕哥6287543

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());


查看完整回答
反對(duì) 回復(fù) 2019-10-11
?
慕的地10843

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();


查看完整回答
反對(duì) 回復(fù) 2019-10-11
?
四季花海

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>();

}


查看完整回答
反對(duì) 回復(fù) 2019-10-11
  • 3 回答
  • 0 關(guān)注
  • 389 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)