3

新しい ASP.NET MVC 3 アプリケーションを構築しています。このアプリケーションでは、古い WebForms ユーザー コントロール (.ascx/.ascx.cs) を新しい MVC カミソリ アプリのオーバーレイに部分ビューとして表示したいと考えています。Webでこれを行うことについて何も見つけることができません。これが可能かどうか誰か教えてもらえますか? もしそうなら、いくつかのドキュメントを教えてください。ありがとう。

4

3 に答える 3

4

そのようなことをするのは非常に悪い習慣です。ただし、これは次のコードで実現できます。

@Html.Partial("_Foo")

次に、_Foo部分的なビューでは、次のようになります。

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>
<%@ Register Assembly="SomeAssembly" Namespace="SomeNs" TagName="foo" %>

<foo:SomeControl runat="server" ID="fooControl" />

お役に立てれば。この質問を見てください:

于 2013-01-15T00:05:37.100 に答える
3

長い答えには、「はい、できますが....」が含まれます。

簡単に言えば、そうすべきではありません。

.ascx ファイルの詳細を知らなくても、次を使用してパーシャルをレンダリングできます。

@Html.Partial(PageName)

ただし、サーバー コントロールがある場合、それらは機能しません。MVC は、同じ種類のコール バック コントロール状態機能をサポートしていません。だから、あなたは似ているものを使っています

<asp:Button runat=server />

そうすれば、パーシャルをリファクタリングする方がはるかに優れています。

于 2013-01-15T00:08:44.203 に答える
1

私は似たようなことに取り組んでいます。私はあなたを助けるかもしれないこれらのリンクを見つけました.

http://www.codemag.com/article/1009061

MVC4 でリモート ReportViewer aspx ページをレンダリングするにはどうすればよいですか?

asp.net mvc 3 razor ビューで reportviewer コントロールを使用するにはどうすればよいですか?

于 2014-10-26T12:09:07.383 に答える