я впервые публикую вопрос, и я в некотором роде новичок в Visual Studio 2010. У меня есть веб-приложение (для школьного задания), которое позволяет вам создавать «новостную статью», которая будет отображаться натитульная страница.Я выполнил все в своем задании, за исключением того, что не могу понять, как проверять форму в моей форме, когда текстовое поле в форме остается пустым.Я искал повсюду и следовал нескольким учебникам, но все еще не могу заставить его работать с моим конкретным случаем.Я зашел в свою базу данных в визуальном конструкторе, щелкнул правой кнопкой мыши по ней, щелкнул «просмотреть код» и поместил это там:
using System.ComponentModel.DataAnnotations;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace NewsDisplay
{
partial class NewsItemDataContext
{
}
[MetadataType(typeof(NewsItem_Validation))]
public partial class NewsItem
{
}
public class NewsItem_Validation
{
[Required(ErrorMessage = "Title is Required")]
public string Title { get; set; }
}
}
И тогда моя функция создания находится в моем Homecontroller и выглядит так:*
[HttpPost]
public ActionResult Create(FormCollection formData)
{
NewsItem n = new NewsItem();
if (ModelState.IsValid)
{
TryUpdateModel(n);
NewsItemRepository repository = new NewsItemRepository();
repository.AddNewsItem(n);
return RedirectToAction("index");
}
else
{
return View(formData);
}
}
Сначала я получал исключение в UpdateModel, но потом обнаружил, что использование TryUpdateModel работает.Теперь я получаю исключение в своем коде .aspx, который контролирует домашнюю страницу, потому что заголовок новости не может быть пустым.Вот моя страница index.aspx с комментарием, где я получаю исключение:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<NewsDisplay.NewsItem>>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Home Page
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>Newest Stories</h2>
<% foreach (var item in Model) { %>
<table class="center">
<thead>
<tr>
<td>
<%= Html.ActionLink( item.Title, "Edit", new { id=item.NewsItemID } ) %> //this is where I get thrown the exception
</td>
</tr>
</thead>
<tbody>
<tr>
<td id="topRow">
<%: item.Date %>
</td>
</tr>
<tr>
<td id="bottomRow">
<%: item.Details %>
</td>
</tr>
</tbody>
</table>
<% } %>
</asp:Content>
Я даже на правильном пути?Я искал это некоторое время и просто не могу понять, как заставить это работать для моего личного проекта.Заранее спасибо за любую помощь!