0
我們的體系結構已設置,以便通過存儲過程完成每個數據庫更新,插入和刪除操作。隨着每次更新,插入或刪除,我們傳入一個ActionId參數,該參數對用戶會話是唯一的,並存儲在日誌表中。表定義爲:實體框架5使用未映射列的更新過程
CREATE TABLE Member(
MemberId int primary key identity not null,
MemberName nvarchar(100) not null)
隨着插入存儲過程定義:
ALTER procedure [dbo].[proc_MemberInsert]
(
@MemberName nvarchar(100),
@ActionId int
)
AS
BEGIN
INSERT
INTO
dbo.[Member] (
MemberName)
values (
@MemberName)
INSERT
INTO
dbo.[Activity] (
TableName,
ActivityId)
values (
'Member',
@ActivityId)
END
我如何使用存儲過程執行鍼對會員單位的插入,並通過在加入參數,因爲這個ActivityId不是實體或任何表的一部分?
簡答:不可能。 (插入和編輯)sprocs的簽名應與實體屬性匹配。也許你可以爲你的實體添加一個ActivityId並且填充上下文的'SavingChanges'事件? (有點像這樣:http://stackoverflow.com/a/14667122/861716)。 –