我使用 Web api 从数据库中检索数据。我只有 1 个表“tblMessage”并想从该表中获取数据。
我设置了所有内容,但是当我运行网站时。错误总是说
“ObjectContent`1”类型无法序列化内容类型“application/xml”的响应正文
我在 stackoverflow 上阅读了一些帖子,这些帖子说可以通过告诉浏览器以 json 格式输出数据来修复错误。之后,错误变为
“ObjectContent`1”类型无法序列化内容类型“application/json”的响应正文
我已经尝试了以下帖子中的所有解决方案,但它们没有解决问题(浏览器报告相同的错误)
Web API 错误:“ObjectContent`1”类型无法序列化内容类型的响应正文
Web API 错误:“ObjectContent`1”类型无法序列化内容类型的响应正文
这个错误到底是什么?
public interface IMessage
{
IQueryable<Message> GetAll();
}
public class Message
{
[Key]
public int i_StmID { get; set; }
public string vch_MsgString { get; set; }
}
public class EFDBContext : DbContext
{
public DbSet<Message> Message { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Message>().ToTable("tblMessage");
}
}
public class MessageRepository : IMessage
{
private EFDBContext context = new EFDBContext();
public IQueryable<Message> GetAll()
{
return context.tblMessage;
}
}
public class MessageController : ApiController
{
public IMessage repo = new MessageRepository();
public IEnumerable<Message> GetAllMsg()
{
return repo.GetAll();
}
}