请求的资源不支持 http 方法'GET'该方法在内部异常后出现



问题是,这段代码给出了内部异常,当它去到url (api/brand)它给出了这个错误:

请求的资源不支持http方法'GET'.

我已经尝试了很多方法,但都不起作用。


public class BrandController : ApiController
{
public List<Brands> DetailsGet()
{
EFDBFirstDatabaseEntities db = new EFDBFirstDatabaseEntities();
try
{
db.Configuration.LazyLoadingEnabled = false;
List<Brands> brand = db.Brands.ToList();
return brand;
}
catch (Exception ex)
{
if (ex.InnerException != null)
{
throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.InnerException.Message));
}
else
{
throw ex;
}
}        
}
}

这是模型类代码:

namespace EntityPractice.Models
{
using System;
using System.Collections.Generic;

public partial class Brands
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public Brands()
{
this.Products = new HashSet<Products>();
}

public long BrandID { get; set; }
public string BrandName { get; set; }

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<Products> Products { get; set; }
}
}

看下面的帖子:. NET Web API

有必要根据你的方法的功能来处理任何在Web API方法中引发的异常。

在上面的例子中,有必要构造并返回HttpResponseException()的一些实例,而不是throw ex;

相关内容

  • 没有找到相关文章

最新更新