View Full Version : سوال: پر شدن فیلدهای ویو Create
  
GILAS_MVC
پنج شنبه 04 مهر 1392, 23:57 عصر
سلام من میخام وقتی ویوCreate مود میشه تعدادی از فیلدها بصورت اتوماتیک پر بشه مثلا تاریخ سفارش تاریخ روز باشه و id از دیتابیس بحونه MAX+1 بکنه
Amir Oveisi
جمعه 05 مهر 1392, 13:49 عصر
تو Action ای که برای Create دارید کافیه یک شی از مدل مورد نظرتون رو بسازید و فیلد های مورد نظرتون رو مقدار دهی کنید و بعد این شی رو به عنوان پارامتر ارسال کنید به View تون.
GILAS_MVC
جمعه 05 مهر 1392, 13:54 عصر
دوست عزیز میشه یه نمونه کوچیک اینجا قرار بدین؟
Amir Oveisi
جمعه 05 مهر 1392, 14:40 عصر
مثلا فرض کنیم من میخوام تو سایتم لایسنس تولید کنم و قصد دارم که نام کاربری و کلمه عبور و تاریخ شروع و انقضای لایسنسم تو صفحه ایجاد به صورت پیش فرض مقدار داشته باشن.
Atiction:
 public ActionResult Create()
        {
License license = new License();
            license.UserName = userName;
            license.Password = password;
            license.CreationDate = DateTime.Now;
            license.ExpirationDate = DateTime.Now.AddMonths(14);
            return View(license);
}
View:
@model PSYCO.Web.NodeUpdateManager.Models.License
@{
    ViewBag.Title = "ایجاد لایسنس";
}
<h2>ایجاد لایسنس</h2>
@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>اطلاعات لایسنس</legend>
        <div class="editor-label">
            @Html.LabelFor(model => model.Title)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Title)
            @Html.ValidationMessageFor(model => model.Title)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.CreationDate)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.CreationDateText)
            @Html.ValidationMessageFor(model => model.CreationDateText)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.ExpirationDate)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.ExpirationDateText)
            @Html.ValidationMessageFor(model => model.CreationDateText)
        </div>
 <div class="editor-label">
            @Html.LabelFor(model => model.UserName)
        </div>
        <div class="editor-field">
            @Html.DisplayFor(model => model.UserName)
        </div>
        <div class="editor-label">
            @Html.LabelFor(model => model.Password)
        </div>
        <div class="editor-field">
            @Html.DisplayFor(model => model.Password)
        </div>
  <p>
            <input type="submit" value="ایجاد" />
        </p>
    </fieldset>
}
GILAS_MVC
جمعه 05 مهر 1392, 15:00 عصر
حالا اگه بخام تعدادی از فیلدهای ویو روReadOnlyبکنم باید چیکا کنم؟
Amir Oveisi
جمعه 05 مهر 1392, 15:31 عصر
من برای فیلد های username و password همینکار رو کردم اگر دقت کنید به جای EditorFor از DisplayFor استفاده کردم.
GILAS_MVC
جمعه 05 مهر 1392, 15:44 عصر
توی صفحات defualt  ویو تک ستونی هستند مثلا یه لیبل و تکت باکس زیرش چطوری میشه صفحه رو به دو ستونی مرتب تبدیل مرد که یه طرف Label باشه و طرف دیگه Editor ها
Amir Oveisi
جمعه 05 مهر 1392, 16:29 عصر
این سوال به بخش Web Design مربوط میشه و بهتره اونجا مطرح کنید. ارتباطی با MVC نداره :-)
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.