日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Entity Framework 6 Alpha 3为Code First提供对存储过程支持,并提供连接恢复功能

發布時間:2024/4/17 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Entity Framework 6 Alpha 3为Code First提供对存储过程支持,并提供连接恢复功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Microsoft宣布Entity Framework 6 Alpha 3已 經可以下載了,它現在支持通過Fluent API將Code First映射到對應的新增、修改和刪除功能的存儲過程;添加了連接恢復功能;包含了來自iceclow和UnaiZorrilla的pull request內容;并添加了新的DbContext的API,以允許你管理自己的事務。

根據Microsoft所說,這三種存儲過程在創建時需要遵循類似于<type_name>Insert,<type_name>Update 及<type_name>_Delete這樣的格式。另外,方法的參數名稱需要和屬性名稱相對應,新增和修改的存儲過程需要為每個屬性創建一 個對應的參數,除了那些標記為ID(Identity)及計算所得的屬性。而刪除的存儲過程則需要為實體(entity)的主鍵值創建一個對應的參數。
讓我們看一看以下代碼片段:

public class Blog { public int BlogId { get; set; } public string Name { get; set; } public string Url { get; set; } }

對應以上代碼的新增存儲過程看起來應該是以下這樣:

CREATE PROCEDURE [dbo].[Blog_Insert] @Name varchar(max), @Url varchar(max) AS INSERT INTO [dbo].[Blogs] ([Name], [Url])VALUES (@Name, @Url)SELECT SCOPE_IDENTITY() AS BlogId

修改和刪除的存儲存儲過程則按照如下方式編寫:

CREATE PROCEDURE [dbo].[Blog_Update]
@BlogId int, @Name varchar(max), @Url varchar(max) AS UPDATE [dbo].[Blogs] ??SET [Name] = @Name, [Url] = @Url WHERE BlogId = @BlogId;
CREATE PROCEDURE [dbo].[Blog_Delete]@BlogId int ASDELETE FROM [dbo].[Blogs]WHERE BlogId = @BlogId

官方文檔詳細地介紹了所有可能的場景細節。

Entity Framework 6 Alpha 3加入了連接恢復功能,能夠從短暫的連接失敗中自動恢復。它的實現使用了IExecutionStrategy接口,而在其中的具體實現又使用到了IRetriableExecutionDector及IRetryDelayStrategy接口。

根據官方信息來源,Entity Framework將包含4個執行策略(Execution Strategy),分別為 NonRetryingExecutionStrategy,DefaultSqlExecutionStrategy,ExecutionStrategy 和SqlAzureExecutionStrategy。

Entity Framework Alpha 3提供了一項功能,它是來自iceclow提交的一個pull request,允許你創建定制化的數據遷移操作,并在一個定制化遷移SQL腳本生成器中處理這些操作。Microsoft ADO.NET Entity Framework的項目經理Rowan Miller已經通過相關的代碼示例介紹了iceclow的實現方式。

Alpha 3也允許你使用來自UnaiZorrilla所 提交的pull request,它提供了一個可插式的復數化與單數化的服務。另一項所包含的功能是允許你通過使用 DbContext.Database.UseTransaction及DbContext.Database.BeginTransaction API管理你自己的事務。

轉載于:https://www.cnblogs.com/shihao/archive/2013/03/05/2945284.html

總結

以上是生活随笔為你收集整理的Entity Framework 6 Alpha 3为Code First提供对存储过程支持,并提供连接恢复功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。