2017-05-15 62 views
0

我有一個使用asp.net web窗體的舊應用程序構建我試圖使用現有的數據庫與使用API​​2的新應用程序 問題是應用程序爲每個客戶端創建新表在系統上註冊綁定一個類到多個表基於參數EF6

例如:16_Notifications,17_Notifications,18 -....

如何結合基於下面示出的一個表通知類登錄用戶

假設有WebApi的Id作爲參數我們可以說

string Id = 16;

我可以做下面的事嗎?

Table[Id+"_Notifications"] 
public class Notification{ 
public int Id {get;set;} 
public string Notification {get;set;} 
} 

其中16,17從登錄的用戶

+0

這可能有助於http://stackoverflow.com/a/30201242/1236044 – jbl

+0

請解釋如何創建不同的背景對每一種都有幫助?對我來說似乎沒有什麼意義,爲什麼不把數據展平呢?所以它更有意義。 – Seabizkit

回答

1

查看張貼在這裏Implement IDbModelCacheKey

希望這種幫助別人,我終於使它的工作,通過改變這一行

後base(ConfigurationManager.ConnectionStrings [「RepositoryConnectionString」] +「; Extended Properties = \」setElementsTableId =「+ setElementsTableId +」\「」)

使用應用程序名,而不是擴展屬性

鹼(ConfigurationManager.ConnectionStrings [ 「RepositoryConnectionString」] +「;應用程序名稱='setElementsTableId =」 + setElementsTableId + 「\'」)

在提到後

+0

我不明白...爲什麼要爲此創建不同的背景? – Seabizkit

+0

@Seabizkit創建不同的上下文,因此每次更改連接字符串時都會調用onCreating方法 – AAHN

+0

Sozs仍然無法獲得它,並且我一直在使用該技術很長一段時間,並認爲自己很好RSED。所以你有很多上下文......或者只是改變con string,不會變得非常煩人,或者你是在動態地做一些事情。我得到你有附加數字表格..但爲什麼不只是有一個上下文與手動設置所有的人。你多久添加一個新的?這樣做的好處是什麼? – Seabizkit