私の質問が答えられるかどうか非常に疑問がありますが、私の欲求不満のレベルが非常に高いので、おそらくそれを下げるのに役立つので、ここで試してみます!
だから、私がやりたいことは次のとおりです。
- VS2012 を最初からインストールします (OK、.exe をクリックして実行してください)。
- 新しい MVC4 プロジェクトを作成する
- Razor View Engine を使用します (現在はデフォルトです)。
- EXT.NET 2.0 を上記で動作させる
これは Ext.NET 2.1 の機能になる予定です。すべての要件が nuGet パッケージでパケット化されるためです。唯一の問題は、他の少数の開発者が、現在既に機能している機能を使用したいと考えていることです。
私が今成功したこと:
- このスレッドに従って、 web.config を正しくセットアップしました。
- VS2012 に Ext.Net 参照を認識させる
方法は次のとおりです。
- 新しいプロジェクトを作成し、基本/空/インターネット アプリケーションテンプレートを選択します
- プロジェクトのリソースで、Ext.NET.dll への参照を追加します (参照、検索など)。
- 次のように web.config を編集します。
http://diffchecker.com/v99ScX0x
- Views/web.config を次のように編集します。
http://diffchecker.com/7UEK058Y
とにかく、変更は両方のファイルで同じであり、そうでなければなりません!
- App_Start/RouteConfig.cs に次の行を追加します。
routes.IgnoreRoute("{exclude}/{extnet}/ext.axd");
- 今、私は上でリンクしたスレッドをフォローし続けます
- 制御された名前の「Examples」を作成します -> ExamplesController.cs、ここでは変更は必要ありません
- 上記のコントローラーのビューを作成します。ビュー/例/Index.cshtml
そこで、ページを少し編集して、もう少し MVC スタイルにしました。実際にはそれほど大きなものではありません。ページ全体は次のとおりです。
@{
ViewBag.Title = "Infinite Scrolling - Ext.NET Examples";
}
@Html.X().ResourceManager()
<h1>Infinite Scrolling</h1>
<p>The brand new GridPanel supports infinite scrolling, which enables you to load any number of records into a grid without paging.</p>
<p>The GridPanel uses a new virtualized scrolling system to handle potentially infinite data sets without any impact on client side performance.</p>
<br />
@(Html.X().GridPanel()
.Title("Stock Price")
.Height(500)
.Width(500)
.InvalidateScrollerOnRefresh(false)
.DisableSelection(true)
.Store(store => store.Add(Html.X().Store()
.PageSize(100)
.Buffered(true)
.AutoLoad(false)
.Proxy(proxy => proxy.Add(Html.X().AjaxProxy()
.Url("/Data/GetData/")
.Reader(reader => reader.Add(Html.X().JsonReader()
.Root("data")
))
))
.Model(model => model.Add(Html.X().Model()
.Fields(fields => {
fields.Add(Html.X().ModelField().Name("Company"));
fields.Add(Html.X().ModelField().Name("Price"));
fields.Add(Html.X().ModelField().Name("LastUpdate").Type(ModelFieldType.Date));
})
))
))
.VerticalScroller(scroller => scroller.Add(Html.X().GridPagingScroller()))
.ColumnModel(columnModel => {
columnModel.Columns.Add(Html.X().RowNumbererColumn().Width(50).Sortable(false));
columnModel.Columns.Add(Html.X().Column()
.Text("Company")
.DataIndex("Company")
.Flex(1));
columnModel.Columns.Add(Html.X().Column()
.Text("Price")
.DataIndex("Price")
.Width(70));
columnModel.Columns.Add(Html.X().DateColumn()
.Text("LastUpdate")
.DataIndex("LastUpdate")
.Width(140)
.Format("HH:mm:ss"));
})
.View(view => view.Add(Html.X().GridView().TrackOver(false)))
.Listeners(listeners => {
listeners.AfterRender.Handler = "this.store.guaranteeRange(0, 99);";
listeners.AfterRender.Delay = 100;
})
)
- 次に、スレッドが言うように、それを機能させるために別のコントローラーを追加しました
- ここで参照 されているように DataController.cs を追加しますSUBSTITUING AjaxStoreResult WITH StoreResult
DataController.cs も必要です
Ext.Net.MVC を使用。
だから私はここにいます!
ここで IIS Express を起動すると、localhost:XXXXX/Examples/ のページを実行できます。
私が持っている最初の問題は、ページが localhost:XXXX/extjs/ ライブラリを読み込もうとすることです。これは MVC-STYLE ではありません! これは @Html.X().ResourceManager() によって行われます。cdnライブラリ
に接続する方法はありますか? またはパスを変更します!??
その後、おそらく別の問題が発生するでしょうが、今のところ、この小さな痛い問題を解決したいと思います