簡體   English   中英

VS2012:使用 InstallShield 時,我的實體框架模型未包含在我的項目輸出中

[英]VS2012: My Entity Framework model doesn´t get included to my project output using InstallShield

我最近被要求為使用實體框架與數據庫進行通信的 Windows 窗體應用程序創建安裝程序。 如果最終用戶的計算機上不存在數據庫,我修改了我的程序以創建數據庫,因此它應該可以正常工作。 問題是,我正在為 Visual Studio 2012 使用 installshield,在構建我的安裝程序后,在安裝目錄中只生成了 2 個文件:

MyProgram.exe & MyProgram.exe.config

問題是,我認為還應該包含一個EntityFramework.dll文件才能使程序正常工作,但顯然 Visual Studio 不想包含它。 我嘗試了一切。 我單擊了 EF 模型的屬性並選擇了“復制到輸出”或“如果較新則復制”,然后什么也沒有。 我還嘗試更改我的 .edmx 文件的屬性,我將 Build Action: None 切換到 Build Action: Compile...但在那之后,我的整個程序甚至無法構建! 它拋出了以下錯誤:

A namespace cannot directly contain members such as fields or methods   

在雙擊錯誤以檢查它發生的位置后,它在代碼中打開了 EDMX 文件,顯然希望我在它的開頭添加一個命名空間......但這整個事情看起來像 XML......那么為什么會這樣問我要一個命名空間?

我想要做的就是將我的實體框架模型添加到我的主要輸出中,但沒有任何效果。 或者它至少不會出現在 installshield 中。 我知道我可以從我的項目/bin 中的調試或發布文件夾中手動添加“EntityFramework.dll”文件,但這感覺不對。 我應該這樣做,還是沒有將我的實體模型添加到我的項目輸出中的原因? 或者為什么當我嘗試從 None->Compile 切換編譯選項時,我的 EDMX 文件會引發命名空間錯誤???

請幫助伙計們...我知道這是一個愚蠢的錯誤,但我想要的是復制我的實體模型在另一台 PC 上工作所需的文件(據我所知,我只需要那個 EntityFramework.dll,也許EntityFramework.xml)。 幫助?

我想要做的就是將我的實體框架模型添加到我的主要輸出中,但沒有任何效果。 或者它至少不會出現在 installshield 中。 我知道我可以從我的項目/bin 中的調試或發布文件夾手動添加“EntityFramework.dll”文件,但這感覺不對

在您的 installshield 項目中(當然與您的項目在同一個解決方案中),您確實應該看到它所依賴的項目的 primary.output。 如果沒有,請右鍵單擊 IS 項目 -> 項目依賴項 -> 並手動檢查。

從 te IS 項目樹中,它可以在“2) 指定您的應用程序數據”->“文件”中找到,其中 zou 可以指定安裝目錄的物理組織和內容。

在 .primary.output -> 右鍵單擊​​ -> 構建時掃描的依賴項 -> 您應該看到所有自動檢測到的依賴項的列表,啟用/禁用您想要的......它對我來說是這樣的。 請注意,之前需要構建。

如果 dll 不在列表中,您也可以將其放在左側的安裝目錄樹中,該文件也會被嵌入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM