Visual Studio 2012 For Webを使用して、テンプレートプロジェクトを使用する場合のようにデータベースと生成されたUIを備えたWebサイトを作成したいと思います。
動的データエンティティWebアプリケーション
ただし、テンプレートプロジェクトで提供されるようなログインページも必要です。
Asp.NetWebフォームアプリケーション
テンプレートはこれらのタスクのいずれにも最適ですが、両方が必要な場合はかなり悪いことがわかりました。
Dynamic Data Entities Webアプリケーションテンプレートから始めると、コーディングをほとんど行わずにデータベース側の優れたページを取得できますが、ログインコードを機能させることはできません(また、書くべきではないと思います)とにかくそのコードは、Asp.Net Webフォームアプリケーションにすでに存在しているためです)。私が試みるときはいつでも、私は恐ろしい混乱に入ります。認証、メンバーシップ、Cookie、または「それがどのように行われるか」などについては、あまり知りたくありません。私が欲しいのは、.Net Frameworkがそれらすべてを処理し、ページを見ている人のユーザー名が何であるかを教えてくれることです。それで全部です。そして、Asp.NetWebフォームアプリケーションテンプレートを使用してそれを行う方法があります。
しかし、Asp.Net Webフォームアプリケーションテンプレートから始めると、ログイン機能はすぐに機能します...しかし、データベースのUIを作成しようとすると、ひどい混乱に陥ります。ただし、そのコードがDynamic Data Entities Webアプリケーションテンプレートにすでに存在していることを考えると、これは必要ありません。繰り返しになりますが、私はそれがどのように行われるかを本当に学びたくはありません。私はそれを使って私のために何かをしたいので、そうする必要はありません。更新や削除などの方法を説明する必要はありません。また、Dynamic Data Entities Webアプリケーションテンプレートを使用する必要もありませんが、ログイン情報を取得できません。
とにかく、私は非常に単純なタスクだと思ったもので私の髪のほとんどを引き裂きました:コードファーストエンティティアプローチを使用して、単純なデータベースでログイン/登録を使用してWebサイトを作成します。私の経験では、データベースは必要だがログインは必要ない場合は、笑っています。ログインしたいがデータベースUIがない場合は、笑っています。両方が必要な場合は、このようなものを生きて呼吸する非常に優れたMicrosoftテクノロジの専門家でない限り、または「トリック」(おそらくどこかのフォーラムに存在する)を知っている場合を除いて、多くの苦痛があります。
とにかく、私の質問は、私がここで何が欠けているのかということです。Webフォーム(自動ログイン/メンバーシップ制御付き)と、テーブルの表示と編集を可能にする動的データエンティティWebアプリケーションを組み合わせたテンプレートを備えた他のテンプレートがたくさんあるWebサイトはありますか?両方の機能を取得するために、MicrosoftがDynamic DataEntitiesWebアプリケーションとAsp.NetWebフォームアプリケーションが実行するすべての処理を実行する方法を知っている必要があることを意図しているとは信じがたいです。
「Enable-Migrations」をWebフォームテンプレートタイプで機能させる方法を理解するのに1週間かかりました...基本的に、すべての小さなステップは大きな戦いであり、小さな「トリック」を見つけるためにフォーラムを次々と読む必要がありました。しかし、結局のところ、私が本当に必要としているのは、動的データエンティティのWebアプリケーション機能(つまり、データ駆動型Webページ)とWebフォーム機能(つまり、ユーザーログイン)を組み合わせてAzureに公開するテンプレートです。簡単だと思いました。しかし、それは悪夢であり、実際、私は完全に立ち往生していることがわかりました。
アップデート:
http://msdn.microsoft.com/en-us/library/ee923692(v=vs.100).aspxのアドバイスに従って、これを機能させるためにさらに半日を費やしました。しかし、それは私にはうまくいきません。それほど複雑であってはなりません。このような一般的なWebサイト形式(UIとログインを備えたデータベース)を作成するために、そのレベルの調整は必要ありません。
今、私は数日前に遭遇した最初の問題に戻っています。それはどういうわけか消えましたが、どうすればよいかわかりません。
PM> Enable-Migrations System.ArgumentException:パラメーターが正しくありません。(HRESULTからの例外:0x80070057(E_INVALIDARG))
サーバースタックトレース:System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md、Object [] args、Object server、Object []&outArgs)のEnvDTE.Properties.Item(Object index)のSystem.Runtime.Remoting .Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
[0]で再スローされた例外:System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg、IMessage retMsg)at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&msgData、Int32 type)atEnvDTE.Properties。 System.DataのSystem.Data.Entity.Migrations.MigrationsDomainCommand.GetFacade(String configurationTypeName)のSystem.Data.Entity.Migrations.Extensions.ProjectExtensions.GetPropertyValue [T](Project project、String propertyName)のItem(Object index) System.Data.Entity.Migrations.EnableMigrationsCommand。<>c_DisplayClass2 。<。ctor>bのEntity.Migrations.EnableMigrationsCommand.FindContextToEnable(String contextTypeName)System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Actionコマンド)の_0()パラメーターが正しくありません。(HRESULTからの例外:0x80070057(E_INVALIDARG))
この時点で私はあきらめるつもりです。1週間試してみた後、データベースとUIはあるがログインがないAzureでWebサイトを作成したり、ログインはあるがデータベースUIがないAzureでWebサイトを作成したりできるので、あきらめなければなりません。すべてのテーブルのグリッドビューを作成し、RowChange、UpdateMethod、DeleteMethodなどを手動で(つまり、動的データスキャフォールディングを使用せずに)フックすることは、スキャフォールディングが存在することを考えるとばかげています(最初からそのテンプレートを使用しない限り、機能させるのは難しすぎますが、そのテンプレートを使用すると、ログインページがありません!)。とにかく、今、この「パラメータが正しくありません」というエラーが再びポップアップするので、私は円を描いて回っています。