我正在用这个url:http://localhost:7951/odata/Student调用一个服务,但是我遇到了错误
404未找到
我哪里做错了?
我的DbContext类如下所示:
public class DataContext : DbContext
{
public DataContext()
: base("name=FrameworkConnStr")
{
}
public DbSet<Student> Students { get; set; }
public DbSet<StudentAddress> StudentAddresses { get; set; }
}
[Table("M_DEMIR.STUDENT")]
public partial class Student
{
public Student()
{
StudentAddress = new HashSet<StudentAddress>();
}
[Column("ID"), Key]
public int Id { get; set; }
[Column("NAME", TypeName = "varchar2"), MaxLength(25)]
public string Name { get; set; }
[Column("SURNAME", TypeName = "varchar2"), MaxLength(50)]
public string Surname { get; set; }
public virtual ICollection<StudentAddress> StudentAddress { get; set; }
}
[Table("M_DEMIR.STUDENTADDRESS")]
public partial class StudentAddress
{
[Column("ID"), Key]
public int Id { get; set; }
[Column("STUDENT_ID")]
public int StudentId { get; set; }
[Column("CITY", TypeName = "varchar2"), MaxLength(25)]
public string City { get; set; }
[ForeignKey("StudentId")]
public virtual Student Student { get; set; }
}控制器代码如下:
[EnableQuery]
public class StudentController : ODataController
{
DataContext db = new DataContext();
public IHttpActionResult Get()
{
return Ok();
}
}WebApiConfig代码如下:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
var builder = new ODataConventionModelBuilder();
builder.EntitySet<Student>("Students");
builder.EntitySet<StudentAddress>("StudentAddresses");
config.Routes.MapODataServiceRoute("odata", "odata", builder.GetEdmModel());
}我哪里做错了?
发布于 2016-09-27 14:33:25
[ODataRoutePrefix("Students")]
public class StudentController : ODataController
{
DataContext db = new DataContext();
[EnableQuery(MaxTop = 100)] // MaxTop so you can use the $top in the query string
[ODataRoute]
public IHttpActionResult Get()
{
return Ok(db.Students); // you do want to return something that can be queried
}
}将您的url更改为http://localhost:7951/odata/Students (添加了一个s)。
另外,不要忘记通过重写控制器的DbContext方法来释放您的Dispose实例。
https://stackoverflow.com/questions/39726985
复制相似问题