2011-08-15 18 views
2

私は既存のEF4.1プロジェクトを正常に動作しています。私は新しい種類のエンティティ(いくつかの追加のフィールドを持つ既存のエンティティ)を返す新しいSPをDBに追加しました。エンティティフレームワークとカスタムエンティティを使用したスト​​アドプロシージャ

問題は、関数をEFにインポートしようとするときです。問題は、複合型を作成しないことです。 「このモデルにはデータベース接続が構成されていません」というメッセージが表示されます。どちらが奇妙なのですか?それは新しいSPとすべてを見ているからです。

(いくつかの型変換の問題)私は私自身の、新しい複合型を作成しようとしましたが、必要に応じて、それはフィールドをマップしません

任意のアイデア何を行うことができますか?

ありがとうございます!

+0

あなたのSPは常に同じ結果セットを返しますか? – a1ex07

+0

それは普通のSELECTクエリです – Roman

答えて

4

マラコの答えに基づいて、私は同じ状況に陥っています。私の問題は私の接続文字列は、外部ファイル

<connectionStrings configSource="some_other_file.config"> 

にある「更新モデル」ウィザードが、それは、接続文字列を外部ファイルに見ていないだろうバグがあり、私は接続文字列を離れることができないということでしたconnectionStringsタグは空でなければならないか、ビルド時にエラーが発生します。

私の回避策は、更新ウィザードを使用し、「Web.configのエンティティ接続文字列を保存する」チェックボックスをオンにし、すべての関数インポートを追加することです。私が終わったら、connectionStringをコメントアウトしてプロジェクトをビルドします。次回は、モデルを更新する前にエンティティ接続文字列のコメントを外してください。

迷惑ですが、少なくとも動作させる方法はあります。

+0

はい、それは私がそれを行う方法ですが、次回新しいストアプロシージャを追加すると、接続文字列をもう一度追加する必要があります。他の賢明なことは、列を取得しようとするとマップされません"Edit Function import"のメッセージが表示されます。 "このモデルにはデータベース接続が設定されていません"というメッセージが表示されます。だから私の仕事はもう一度エストル手順を再インストールすることですが、私はすべてのストアproc ..をやり直さなければならないたびに20回以上すると何が起こるのですか?新しいモデルを作成しますか? @Rocketmonkeys – Xvegas

+0

ここに私の解決策のリンクがありますビデオとありとあらゆるものがありますが、模倣しようとしていますモデルを削除したり、接続文字列を追加することでそれをやり遂げる方法[ビデオリンク](http://youtu.be/GHKYCgXqqMY) – Xvegas

+0

@ Xvegas - ここで解決策をコメントや別の回答として投稿するのがよいでしょう。外部の情報源へのリンクは、ある理由か他の理由で悪くなることが多く、あなたの解決策が何であったかを誰にも知らせることはできません。ありがとう! – rocketmonkeys

0

エンティティモデルのConnectionStringプロパティが空であると仮定します。モデルブラウザをチェックインします。

これを修正する最も簡単な方法は、.configファイル内のすべての接続文字列を削除することです。

connectionstring=" 

の検索が完全に行(複数可)を削除したり、EDMXを削除して再作成

でそれ/それらをコメントしてください。 「Web.configのエンティティ接続の設定を次のように保存する」にチェックが入っていることを確認します。

ここでConnectionStringを設定し、関数インポートを使用して複雑なモデルを生成することができます。

0

まだ動作しない場合は、他の接続文字列を削除してください。新しいものを追加してください。 これによって同じ問題が解決されます。すべての接続文字列を削除し、最初にEntityフレームワークの接続文字列を追加し、次に他の文字列を追加したが名前を変更した。

0

私の場合、モデルプロジェクトでどのように機能するのですか?私はそこに残っている他の接続文字列がありましたが、そこには "server ="(非EDMX関連)があります。私はこれらの他の接続文字列を削除しただけで、EDMXアップデートウィザードは広告として動作します。

エラーメッセージが表示されました。次の例外のためにApp.Configファイルを更新できません: '' server 'キーワードはサポートされていません。「

0

この同じ問題に私のソリューション(VS2013)は、このでした:ブラウザ

  • をモデル化するために

    1. ゴー右データベース
    2. からYourModel.edmx
    3. モデルの更新をクリックして次にそれがために私を促しました接続を選択します。私が望む接続を選択し、次の画面に進みました。
    4. 必要なものを追加/更新/削除します。
    5. Finishを選択してください。接続はここにあります。
  • 0

    ストアドプロシージャを追加するたびに接続文字列を追加する必要があります。それ以外の場合は、 "Edit Function import"でメッセージを受け取った列を取得しようとするとマップが表示されません。「このモデルにはデータベース接続が設定されていません」というメッセージが表示されます。

    私の回避策は、ストアドプロシージャを再インストールすることですが、20回以上、ストアドプロシージャをすべて実行しなければならないときに何が起こるのでしょうか。または、新しいモデルを作成します。これはこれの欠点です。

    ここに私の解決策のリンクがありますが、ビデオとすべてがありますが、モデルを削除したり接続文字列を追加したりする方法はありません。VIDEO LINKまたはstack overflow solutionまだマップストアがありません。プロシージャ私は、私の会社がストアプロシージャからテーブルを取得して、JSON Stringとしてデータを送信しなければならないクラスを使用します。そのソリューションが私に知らせたいならば、私はその説明を使ってコードを実行します。 dsn接続文字列とODBC "Open Database Connectivity")。

    関連する問題