2011-11-11 25 views
3

我在嘗試在我的佈局上渲染部分操作時出現問題。上線:ASP.Net MVC3渲染部分操作返回錯誤

@{Html.RenderAction("Login");} 

我得到一個錯誤「CS1501:沒有重載方法‘寫’取0參數」。我也嘗試過直接調用RenderPartial,結果相同......你能告訴我什麼是錯的嗎?

我的局部視圖的代碼:

@model SikWebRole.Models.LogOnModel 
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.LoginLink').click(function() { 
      $('#loginForm').submit(); 
     }); 
    }); 
</script> 
@using (Html.BeginForm("LogOn", "Account", FormMethod.Post, new { id = "loginForm" })) 
{ 
<div class="loginBox"> 
    <div class="errorMsg"> 
     @Html.ValidationSummary(true, "Błędny login/hasło.") 
    </div> 
    <div class="loginHolder"> 
     <input type="text" class="textInput" name="UserName" value="Login" /> 
    </div> 

    <div class="passwordHolder"> 
     <input type="text" class="textInput" name="Password" value="Hasło" /> 
    </div> 
    <input name="RememberMe" style="display:none;" type="hidden" value="true"/> 
    <a href="#" class="loginLink" ><span class="loginButton">Zaloguj</span></a> 

    <ul><a href="#"><li class="registerLi">Zarejestruj</li></a><a href="#"><li class="RemindLi">Przypomnij hasło</li></a></ul> 
</div> 

}

該功能用於渲染動作:

public PartialViewResult Login() 
    { 
     return PartialView("LogOnForm", new SikWebRole.Models.LogOnModel()); 
    } 

局部視圖我想渲染屬於 「登錄」方法來自賬戶控制器,並且登錄方法在圖片控制器中,也許這是原因?

我會很高興爲所有的答案。

問候

按照要求,這是我Layout.cshtml的代碼:http://pastebin.com/He2Rp5P4

+0

顯示你有你的'RenderAction'調用的代碼。上下文可能有些話要說。 –

回答

8

在你CSHTML文件使用@ Html.Partial,不@ Html.RenderPartial。

+0

謝謝,幫助。你能告訴我這兩者之間的差距嗎? – domderen

+2

@Tromax檢查出這個[SO問題](http://stackoverflow.com/questions/5248183/html-partial-vs-html-renderpartial-html-action-vs-html-renderaction)的差異。 – Becuzz