問題タブ [asp.net-mvc-scaffolding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - 選択リストへの MVC3 モデルのバインド
MVCScaffolding 機能を使用して、EF4.1 を使用して保存されたデータの CRUD UI を作成しています。
基本的なシナリオではうまく機能し、すべてのデータをテキスト ボックスにバインドします。
ただし、"Person" オブジェクトの "Title" プロパティを選択リストにバインドする必要があります。ビュー モデルを作成する必要はなく、ビューを実際の人物モデルにバインドすることに固執することを望んでいました。
これは私の見解ですが、選択したアイテムが正しくバインドされていません。実際のデータは異なる可能性がありますが、選択された項目として常に「Mr」が表示されます。
これはどちらも機能しません:
ただし、これは次のことを行います。
しかし、「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というメッセージが表示されます。レコードを更新しようとすると例外が発生します。
モデルやコントローラーへの影響を最小限に抑えて、これを機能させるにはどうすればよいですか?
asp.net-mvc-3 - MvcScaffolding NuGetのインストール:「同じキーを持つアイテムが既に追加されています」
NuGetを介してMvcScaffoldingをインストールするとエラーが発生します。誰かが問題を解決する方法について何か提案がありますか?
次のコマンドを使用して、再インストールをアンインストールしてみました。
asp.net-mvc - MVC2からMVC3:「ファイルまたはアセンブリを読み込めませんでした」エラーが原因でMvcScaffoldingが失敗する
設定:
私はMVC3、EF 4.1、Visual Studio 2010 SP1を使用しており、PowerToolsが最新バージョンに更新されています。
上記のインストールでは、以前に必要だったNuGetパッケージは必要ありません。すべてがRTMです。
プロジェクトはMVC2からMVC3にアップグレードされました。最初にアップグレードツールを試しましたが、それは私に悲しみを与えたので、MVC3のReadMeファイルの指示に従って手動で行いました。
問題:
(Code First DbContextに対して)CRUD機能にコントローラーとビューの新しいスキャフォールディングを使用しようとすると、スキャフォールディングは次のエラーで失敗します。
質問:
Lanap.BotDetectはキャプチャコントロールです。それはうまく動作し、そこにあります、私は他のページでそれを問題なく使用します、ソリューションはコンパイルします、など。したがって、このdllには問題はありません。
ただし、このエラーにより、新しいスキャフォールディング機能の使用が停止しています。
新しいコントローラーのスキャフォールディングとそのビューとの関係がわからないため、構成が間違っている必要があります。
私がどこを見ることができるかについての提案はありますか?グーグルは空白を描きました。
編集1:
コメントで提案されているように、FusionLogを使用して失敗したアセンブリバインディングを確認しようとしています。バインドの失敗は表示されませんが(ただし、それは私のせいかもしれません)、疑問が残ります。
MvcScaffoldingがCaptcha.dllをロードする必要があるのはなぜですか?これはコントローラーの足場であり、T4にはこの.dllについて何も書かれていません。
(注:スキャフォールディングT4コードは編集していません)
編集2:
Lanap.BotDetectへの参照を削除しようとしましたが、エラーが接続文字列を含む構成ファイルを開くことができないように変更されました(接続文字列をdb.config文字列にシャントアウトしましたが、見たときの視覚的な苦痛が少なくなりました設定ファイルで)。
私はこのアプリの足場をあきらめています。クリーンで新しいアプリで動作しますが、既存のコードがたくさんあるこのアプリでは動作しません。
asp.net-mvc - 主キーとしてのasp.netmvcスキャフォールディングとGUID
次のような構造のテーブルがあります
Visual Studioを使用してエンティティモデルを作成し、編集/削除などのビューを生成しました(mvcスキャフォールディング)
問題は「編集」にあり、そのリンクをクリックすると、正しいデータで適切なフォームが表示されますが、「保存」ボタンがまったく機能しません。他のリンク(削除、作成、詳細)は完全に機能することに注意してください。
したがって、[編集]リンクをクリックすると、URLは次のようになります。
http:// localhost:10871 / admin / Edit / e7d0c5ee-7782-411f-920e-7b0d93c924e1
フォームは正しく表示されますが、保存ボタンが機能せず、ネットワークアクティビティは発生しません。一意の識別子を主キーとして使用することに何か特別なことはありますか?
ありがとう
- -コード - -
Edit.cshtml
--AdminController.cs--
// GET:/ Admin / Edit / 5
Edit2 ZippyV のコメントに応えて、Edit.cshtmlに次のコードを追加しました
驚いたことに(または無知)-IDの代わりにGUIDが表示されています
それとは別に、そのフィールドに値(1、2、または任意の整数)を入力しても、「フィールドIDは数値である必要があります」というメッセージが表示されます。
asp.net-mvc-3 - Mvc 3スキャフォールディング:ビューに渡されたモデルがSQLエラーをスローします
この投稿は大幅に編集および更新されています。
意図:
本質的にミニASP.NETMVC3アカウンティングパッケージであるアプリを書いています。私はEF4.1コードファーストとスキャフォールディングを学ぶためにそれをやっています
セットアップ:
SQL Server 2008 Express、Visual Studio 2010 SP1、およびASP.NETMVC3とMvcScaffolding1.0.2を使用しています。
既存のデータベースがあります。データベースには次のテーブルがあります。
Person_Accountsなど、いくつかの関係があります。
ここで、MVC Scaffoldingを使用して、データベース内のルックアップテーブルのデータを作成するための入力ページを作成したいと思います。
私が試したこと:
.edmxを作成し、それを使用してt4自動生成を使用してPOCOクラスを作成しました。POCOクラスを取得したら、.edmxを除外しました。
EF 4.1コードの問題を回避しました。最初に適切な接続文字列が見つからないため、独自のsql expressデータベースを作成します(この落とし穴の詳細については、Rachel Appelsブログを参照してください) 。
最後に、慣例のコンテキスト名=接続文字列名を使用して、最初にEFコードを取得して正しいデータベースと通信しました。
次に、MVC3スキャフォールディングを使用してビューのスキャフォールディングを行いました。したがって、生成されるリポジトリコードは私自身のものではなく、SteveSandersonのものです。
私はこれまでEFを使用したことがないので、これが「ルックアンドラーン」によってLINQからSQLに進む方法になることを望んでいました。
結局、私はいくつかの問題を抱えています...
問題:
まず、EFコードファーストで作成したデータベースを使えば問題ありません。
ただし、接続文字列を既存のデータベース(.edmxファイルの作成に使用したもの)に変更します。たとえば、Accountsエンティティのスキャフォールディングされたインデックスビューを要求すると、次のエラーが発生します。
- ノート: -
EFによって作成されたデータベースと私によって作成されたデータベース(非常に単純)の唯一の違いは、関係といくつかのトリガー、およびEdmMetadataテーブルです。
-注記の終わり--
私の理由:
この理由は、一見すると非常に奇妙なエラーです。関連データのないアカウントのリストが必要なだけなのに、何が起こっているのかは次のとおりです。
既存のデータベースまたは最初にコードによって作成されたデータベースのいずれかを使用して、SQLプロファイラーをチェックインすると、データベース内のほぼすべてを選択しているように見える大規模なSELECTクエリでエントリSQL:BatchStartingが表示されます。トランザクションデータの単純な選択ではなく、この大規模なクエリが呼び出される理由がわかりません。おそらく、すべての関連データを読み込もうとしていますが、私はそれを求めていません。
繰り返しになりますが、最初に生成されたdbを使用すると、すべてが機能することを強調します。しかし、私の既存のデータベースを使用すると、上記のエラーショーがスローされます。
ここでの2つの問題:
1つはエラーです。なぜそれが起こるのですか?
もう1つは、データベース内のほぼすべてのデータに対する巨大なselectステートメントです。
私の見解は、アカウントレコードのリストを吐き出そうとしているだけです。CostCentresやCurrenciesテーブルなどには(このビューでは)興味がありません。
質問:
a。Scaffoldedリポジトリがすべてのデータを要求するのはなぜですか?
b。既存のデータベースでエラーが発生するのはなぜですか?
私はこの質問に報奨金を設定しました。上記の2つの質問に答えた人は誰でも報奨金を受け取ります。
その他の質問(バウンティとは関係ありません!):
c。MVC 3スキャフォールディングを使用して既存のデータベースで最初にコードを作成するために何をすべきかを読むことができるブログへのリンクを知っている人はいますか?
d。t4テンプレートを使用して、既存のデータベースとそのすべての関係などに正しくマップするDbContextファイルを作成する方法はありますか?
e。他の提案(転職を除く)はありますか?
f。EF 4.1コードファーストを読むための本はありますか?(JuliaLermanの最新版はEF4.0です。つまり、コードは最初に公開時にベータ版でした)。
アップデート:
私は質問に答えました(なぜ巨大なクエリがすべてのデータを取り込むのですか。スキャフォールドリポジトリには次のメソッドがあります:
これは、Scaffoldedコントローラーから呼び出されます。
謝罪いたします。私はあまりにも竹に覆われていました。
しかし、質問bは未回答のままです。
asp.net-mvc - MVCScaffolding ' Invoke-ScaffoldTemplate : エラー HRESULT E_FAIL COMException '?
突然、 PMC の MVCScaffolding コマンドから次の結果が得られます。
最後に正常に実行されてから何も変更されていないため、このエラーからは多くの情報が得られません。
何か案は?
asp.net-mvc - ArgumentNullExceptionのリストボックスパラメーター名:ソース
設定:
MvcScaffoldingを使用してコントローラーの足場を作成しました。
プロパティModel.IdCurrencyFromの場合、スキャフォールディングはHtml.DropDownListForを作成しました。
これは、新しいレコードでも、既存のレコードの編集でも、正常に機能します。
問題:
通貨は、AR $、US $、GB£の3つだけです。したがって、ドロップダウンリストの代わりに、ListBoxが必要です。
だから私は上記を次のように変更しました:
ArgumentNullException、パラメーター名:sourceを取得しましたが、既存のレコードを編集している場合のみです。新しいレコードを作成すると、これは正常に機能します。
質問:
何が起こっている?!
何も変わっていません。DropDownListForに戻すと、すべて正常に機能します。(ListBoxForではなく)ListBoxに切り替えると、エラーが発生します。
モデルはnullではありません(私が言ったように、DropDownListForで正常に動作します)...そして私はアイデアを使い果たしました。
asp.net-mvc-3 - データ型モデルを自動インクリメントする方法
こんにちは、MVC3 アプリの CatergoryModel を定義しようとしています。Id を自動インクリメントに設定する方法を知りたいです。
asp.net-mvc-3 - MVC 3スキャフォールディングはn層アプリケーションで使用できますか?
ASP.NET MVC3スキャフォールディングの例をいくつか見てきましたが、それらは常に単純な基本的なアプリケーションです。いくつかのプロジェクトを使用した階層型/階層型ソリューションについてはどうでしょうか。
基本的な足場は、すべてをコントローラーにプッシュします。
足場テンプレートをカスタマイズして、データプロジェクトからPOCOを取得し、リポジトリプロジェクトにリポジトリを作成し、サービスプロジェクトにサービスを作成し、最後にデータコンテキストについて何も知らないMVCにシンコントローラーを作成できますか?
それは本当の生産性ブースターなので、私は少し混乱しています。