我已經創建了幾個自定義服務器控件,它們不是用戶控件,因此沒有要使用的「ascx」文件。我得到一個MVC項目來模仿我使用服務器控件編寫的相同類型的功能。基本上服務器控件是一個複合控件,所以它有幾個文本框,標籤,複選框,並且它有一些javascript。它還將該功能綁定到一些Web服務。將自定義服務器控件添加到MVC
我想知道是否有可能將此控件插入MVC頁面,或者如果我應該從頭開始重新構建這個功能,純粹使用HTML助手。我在後面想。
我是一個初學者,當談到自定義html助手。我可以像編程服務器端控件一樣對待編程自定義html助手嗎?
順便說一句,我需要添加這個例子中的URL顯示什麼我談論: http://msdn.microsoft.com/en-us/library/aa719734(v=vs.71).aspx
每當我提到的服務器端控件,人們都假設原生的ASP.NET控件,或用戶控件,而我談論定製服務器端控制。
幾個月前我就採用了自定義服務器控制方法,因爲它使部署變得非常簡單並且易於添加到其他.net項目中。由於它將所有內容都包裝在一個dll中,所有你需要做的就是回收這個池。但似乎MVC說,「不,你不會這樣做的」。
任何有關如何解決此問題的建議,提示或鏈接都將有所幫助。
順便說一句,如果它很容易在網上找到,我不會在這裏發佈。我發現的大多數例子都只談到用戶控件或本地asp服務器控件,而沒有涉及自定義服務器控件。我只是不想再一次做這個功能,並經歷了這個頭痛。
其實你可以在mvc中使用局部渲染渲染ascx。如果我有一個CustomControl1.ascx,我可以使用「@ Html.Partial(」CustomControl1「)」或「@ {Html.RenderPartial(」CustomControl1「);}」我希望我能做的某種方向在此刻。只是不使用現有的功能,並重新從頭開始重寫這一點很痛苦。 – sksallaj
嗯,是的。你可能會渲染它們。但是你不能訪問ascx代碼隱藏類的方法或屬性。 ascx控件的功能基於這樣一個事實,即公佈的數據和ascx類是使用該數據初始化的。但在MVC中,數據發佈到控制器。你必須處理模型聯編程序。我不認爲如何在MVC中重用ascx有任何方向。 – user2626270