2011-01-21 12 views
9

मेरे पास मेरे दृश्य फ़ोल्डर Users में एक फ़ाइल है जिसे UserViewControl.cshtml कहा जाता है।एक ही दृश्य फ़ोल्डर में रेंडरपार्टियल नियंत्रण

(Users.cshtml) वास्तविक दृश्य में मेरे कोड है:

@Html.RenderPartial("RegisterViewControl") 

त्रुटि: The best overloaded method match for 'System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)' has some invalid arguments

मैं पूरी तरह से पूरे दृश्य फ़ोल्डर के रूप में इस तरह पथ टाइप करने के लिए भविष्य में कदम हो सकता है नहीं करना चाहती :

@Html.RenderPartial("~/Views/Users/RegisterViewControl.cshtml") 

कोड में RegisterViewControl.cshtml:

@model SampleMVC.Web.ViewModels.RegisterModel 

@using (Html.BeginForm("Register", "Auth", FormMethod.Post, new { Id = "ERForm" })) 
{ 
    @Html.TextBoxFor(model => model.Name)   
    @Html.TextBoxFor(model => model.Email)    
    @Html.PasswordFor(model => model.Password)   
} 

यह एक ऐसा फॉर्म है जो AJAX द्वारा सबमिट किया जाएगा, लेकिन मुझे व्यूमोडेल से सभी सत्यापन चाहिए।

+0

पोस्ट करें UserViewControl.cshtml – Clicktricity

+0

@Clicktricity के भीतर कोड जोड़ा गया। –

उत्तर

23

यह इस तरह होना चाहिए:

@{Html.RenderPartial("RegisterViewControl");} 

और वह RenderPartial विस्तार विधि कुछ भी वापस नहीं करता है क्योंकि है। यह सीधे आउटपुट को लिखता है। aspx में आप इसे इस तरह का उपयोग करें:

<% Html.RenderPartial("RegisterViewControl"); %> 

के बजाय:

<%= Html.RenderPartial("RegisterViewControl") %> 

तो वही नियम रेजर के लिए लागू होते हैं।

7

आप वैकल्पिक रूप से

@Html.Partial("RegisterViewControl") 
0

मैं भी इस मुद्दे था इस्तेमाल कर सकते हैं और स्कॉट गुथरी के ब्लॉग पोस्ट से सीधे मिल गया:

using @Html.RenderPartial() from a Razor view doesnt work.

Rather than call Html.RenderPartial() use just @Html.Partial("partialname")

That returns a string and will work.

Alternatively, if you really want to use the void return method you can use this syntax:

@{Html.RenderPartial("partialName")}

But @Html.Partial() is the cleanest.

इस बात के लिए कड़ी है: http://weblogs.asp.net/scottgu/archive/2010/12/30/asp-net-mvc-3-layouts-and-sections-with-razor.aspx

संबंधित मुद्दे