我试图从另一个数据库插入数据,并且此代码一直工作到今天。现在它不再了。如何解决将datetime2数据类型转换为datetime数据类型导致超出范围的值
下面是代码:
var itemMember = Db.Members.FirstOrDefault(p => p.Id == CurrentMember.Id);
var itemSelectedName = Db.Topics.FirstOrDefault(p => p.Id == TopicId);
var itemMap = Db.Reeves.FirstOrDefault(p=> p.Member.Id == CurrentMember.Id);
var itemReeve = Db.Reeves.FirstOrDefault(p => p.Member.Id == CurrentMember.Id);
var item = new Problem
{
Name = input.Name,
Text = input.Info,
Topic = itemSelectedName,
WhoIs = itemMember,
Province = itemMap.Province,
District = itemMap.District,
Town = itemMap.Town,
Reeve=itemReeve,
Created=DateTime.Now,
Solved = false,
Read=false
};
Db.Problems.Add(item);
Db.SaveChanges();
没有什么空的代码,它抛出一个错误:
The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value.
我该怎么办?
而且这个错误现在显示出来:
System.Data.Entity.Infrastructure.DbUpdateException: An error occurred while saving entities that do not expose foreign key properties for their relationships. The EntityEntries property will return null because a single entity cannot be identified as the source of the exception. Handling of exceptions while saving can be made easier by exposing foreign key properties in your entity types.
但正如我说,这是工作到今天:/
这里是视图模型:
[Display(Name = "Başlık"), Required, StringLength(50)]
public string Name { get; set; }
[Display(Name = "Bilgi")]
[UIHint("TinyMCE")]
public string Info { get; set; }
[Required(ErrorMessage = "Gerekli Alan")]
[Display(Name = "Konu")]
[UIHint("DropDownList")]
[AdditionalMetadata("DataController", "Problem")]
[AdditionalMetadata("DataAction", "ProblemDrop")]
public int? TopicId { get; set; }
这里是模型
public class Problem
{
public int Id { get; set; }
public string Name { get; set; }
public string Text { get; set; }
public short Sira { get; set; }
public DateTime Created { get; set; }
public virtual Topic Topic { get; set; }
public virtual Member WhoIs { get; set; }
public virtual Province Province { get; set; }
public virtual Town Town { get; set; }
public virtual District District { get; set; }
public virtual Reeve Reeve { get; set; }
public Boolean Solved { get; set; }
public DateTime SolvedDate { get; set; }
public virtual Member WhoSolved { get; set; }
public Boolean Read { get; set; }
}
已解决:日期为空可能是问题吗?
你模型中是否包含任何其他'DateTime'属性? –
发布您的模型班将有所帮助。 – jjczopek
我已更新模型和视图模型@StephenMuecke – furkan