質問

最初にこれを読みました 質問, 、しかし、この知識は私の問題を解決するのに役立ちませんでした。

最初にVisual StudioによってEDMXファイルを作成しました。名前の生成されたファイル:

  • uqsmodel.designer.cs
  • uqsmodel.edmx

このファイルは、app_codeフォルダーにあります。

そして、私のWebアプリは正常に機能します。 Web構成でConnectionStringを自動的に生成します。

<add name="uqsEntities" connectionString="metadata=res://*/App_Code.uqsModel.csdl|res://*/App_Code.uqsModel.ssdl|res://*/App_Code.uqsModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=aemloviji\sqlexpress;Initial Catalog=uqs;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /></connectionStrings>

その後、楽器でクラスを生成する必要がありました edmgenツール(フル生成モード)。名前の生成された新しいファイル:

  • uqsmodel.cs
  • uqsmodel.csdl
  • uqsmodel.msl
  • uqsmodel.ssdl
  • uqsviews.cs

以前にあるEDMXファイルがあるフォルダーに新しい分類を保存し、既存のEDMXファイルを削除します。また、ページがWebページサーバーのサイドコードにリダイレクトすると失敗します。と問題: 指定されたメタデータリソースをロードできません.

いくつかのアイデアをお願いします。

役に立ちましたか?

解決

問題は、.csdl、.ssdl、および.mslファイルの形でメタデータを生成したという事実に関連しているようです。接続文字列は、プロジェクトDLLに埋め込まれるリソースをポイントします(あなたのウェブサイトでは利用できません)。
解決策は、次のようにメタデータへのパスを修正することです。

metadata=~\App_Code\uqsModel.csdl|~\App_Code\uqsModel.ssdl|~\App_Code\uqsModel.msl

詳細情報を利用できます ここ.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top