возникли проблемы с MVC, строка не отображается в представлении возврата - PullRequest
0 голосов
/ 15 июля 2011

в контроллере:

       public ActionResult Create()
            {
                int i = 0;
                string s = "";
                bool unique = false;

                while (!unique)
                {
                    s = GenerateCode(i);

                    var CheckURLs = from x in db.QRCodeGs
                            where x.QRCodeShortString == s
                            select new { ShortCode = x.QRCodeShortString};
                    if (CheckURLs.Count() == 0)
                    {
                        unique = true;
                    }
                    else
                    {
                        i++;
                    }
                }


        return View(new QRCodeG { QRCodeShortString = s, QRCodeGenDate =    DateTime.Today, LastEditDate = DateTime.Today, LastEditor = User.Identity.Name });

            //return View();
           } 

Create.cshtml page:

    <div class="editor-field">
        @Html.EditorFor(model => model.QRCodeShortString)
        @Html.ValidationMessageFor(model => model.QRCodeShortString) <br />(You make   choose your own string or use this dynamically generated one)
    </div>

Ответы [ 2 ]

0 голосов
/ 15 июля 2011

первое, что я хотел бы предложить, это переместиться туда, где вы объявляете модель, которую вы передаете представлению, сделать что-то вроде

var qrCodeG = new QRCodeG { QRCodeShortString = s, QRCodeGenDate =    DateTime.Today, LastEditDate = DateTime.Today, LastEditor = User.Identity.Name };
return qrCodeG;

затем используйте отладчик, чтобы проверить, правильно ли заполняется qrCodeG.

если это работает, попробуйте добавить

<div> @model.QRCodeShortString </div>

на ваш взгляд и посмотрите, правильно ли он выводит ваши данные

если это работает, посмотрите, что происходит в @ Html.EditorFor (model => model.QRCodeShortString)

0 голосов
/ 15 июля 2011

Не знаю точно, в чем проблема, но вот несколько вещей, которые нужно проверить

  1. Убедитесь, что модель соответствует типу на странице cshtml.т.е.: @model QRCodeG
  2. Убедитесь, что в переменной 's' действительно есть что-то
  3. Проверьте ваш css (класс editor-field), чтобы убедиться, что вы не скрываете его по ошибке.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...