Не совсем уверен, что здесь происходит, но кажется, что Microsoft всегда выпускает самые крутые фреймворки (теоретически), а затем не оставляет поддержки.Любой, кто может мне помочь, я буду ОЧЕНЬ благодарен.Этот один поставил меня в тупик на два дня, и я до сих пор не могу понять это.Вот настройки:
- Visual Studio 2010 Professional (или Express в этом отношении, я пробовал оба)
- SQL Server Compact Edition 4 (или Express в этом отношении, я 'мы пробовали оба)
- Создать новый проект, добавить новую модель (я назвал мой BlogModels.cs)
Добавить новый класс с именем Post и присвоить ему свойства, как показано ниже ...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations;
namespace MVC3BlogEngine.Models
{
public class Post
{
public int ID { get; set; }
[Required]
public string Title { get; set; }
[Required]
[DataType(DataType.MultilineText)]
public string Text { get; set; }
public DateTime PublishDate { get; set; }
}
}
Запустите проект, перейдите к модели (/ Сообщений) и попытайтесь добавить новое сообщение.Если я ввожу более, чем, скажем, 128 символов, возникает исключение:
Проверка не удалась для одного или нескольких объектов.См. Свойство EntityValidationErrors для более подробной информации.
Итак, что дает?Я смотрю на базу данных, которую она создала (которую я считаю самой крутой вещью со времен нарезанных рогаликов), и вижу, что созданный ею столбец был nvarchar (128).Итак, моя первая мысль состояла в том, что, хотя я сказал ему использовать MultilineText в качестве типа данных, он не генерировал столбец должным образом (не очень хороший MS).Итак, я изменил тип данных на текст и повторил попытку.Неудачно.
Кто-нибудь?