2010-09-09 54 views
1

我試圖用這個的ConnectionString如何配置實體框架的位置元數據的web應用程序

... 
metadata= 
     res://*/CmsEntityDataModel.csdl| 
     res://*/CmsEntityDataModel.ssdl| 
     res://*/CmsEntityDataModel.msl; 
.... 

我想刪除「*」在Web.config文件來配置實體框架4,並添加實際我的dll文件的路徑。 如何在沒有附加組件的情況下在Visual Studio中找到dll的路徑?

感謝

+0

何必去改變它,如果它作爲是什麼? – 2010-09-09 15:56:08

+2

嗨,布賴恩,對不起,我正在爲我學習將是非常有用的理解它是如何工作的。我也想「*」增加開銷導致編譯器必須掃描每個DLL。如果你知道如何去做,請告訴我。感謝您的時間 – GibboK 2010-09-09 15:59:26

+0

這不是很清楚你的問題是什麼。我用*構造做了什麼回答。我不知道你通過查找路徑沒有附加 – 2010-09-09 16:11:27

回答

3

我寫a long explanation of EF metadata pathsMSDN;您可能會發現閱讀它很有幫助。

,可隨時更換*與程序集的名稱,這可能是也可能不是一個強大的名字,如:

<add name="MyEntities" connectionString="metadata= 
     res://Simple Mvc.Data.dll/Model.csdl| 
     res://Simple Mvc.Data.dll/Model.ssdl| 
     res://Simple Mvc.Data.dll/Model.msl;provider= <!-- ... --> 
1

res://*/CmsEntityDataModel.csdl是一種資源的位置,當你進入實際路徑它指向磁盤上的文件。這意味着在部署時,您還需要將文件放在磁盤上的該位置。

有元數據作爲嵌入資源和使用資源的位置是什麼,我會做,除非你必須要能夠交換它在某些時候不改變DLL。

更多信息

+0

謝謝,我很感激 – GibboK 2010-09-09 16:21:30