PDA

View Full Version : دسترسی به توابع سایر کنترلرها در layout.cshtml



m.mahnani
یک شنبه 20 فروردین 1391, 08:12 صبح
با سلام
می خواستم بدونم میشه از Layout.cshtml به تابع LogOn از کنترلر Account دسترسی داشت ؟
می خوام به جای اینکه برای لاگین کردن به به page خاص بره این کار رو توی Layout انجام بدم
با تشکر

mze666
یک شنبه 20 فروردین 1391, 09:48 صبح
سلام دوست عزیز - اگر از MVC 4 استفاده کنید این قابلیت رو به صورت خودکار داره و صفحه لاگین و رجیستر هر دو به صورت Popup تو همون صفحه ای که هستید اجرا میشن (بدون رفتن به صفحه ای دیگر). 85426
البته mvc 4 بتا هستش و هنوز ورژن نهایی نیست.

amir-yeketaz
یک شنبه 20 فروردین 1391, 22:36 عصر
با سلام
می خواستم بدونم میشه از Layout.cshtml به تابع LogOn از کنترلر Account دسترسی داشت ؟
می خوام به جای اینکه برای لاگین کردن به به page خاص بره این کار رو توی Layout انجام بدم
با تشکر
یعنی میخواین ajax انجام بشه؟

mo.esmp
دوشنبه 21 فروردین 1391, 14:14 عصر
برای این کار میتونی از پلاگین Dialog از jQuery UI استفاده کنی.

http://jqueryui.com/demos/dialog/#default
و در Layout.cshtml کدهای زیر رو قرار بده
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")"></script>
<script type="text/javascript">
$(function () {
$('.popup-link').click(function () {
var href = $(this).attr('href');
$('<div><p class="popup-content"></p></div>').dialog({
autoOpen: true,
modal: true,
height: 200,
width: 400,
open: function () {
$(this).find('.popup-content').load(href);
},
close: function () {
$(this).dialog('destroy');
}
});
return false;
});
});
</script>
@Html.ActionLink("ورود", "LogOn", "Account", new { }, new { @class = "popup-link" })