ASP.NET webapi konusunda yeniyim ve id tarafından sorgulanan nesnelerin bir listesini döndürmenin bir yolunu bulamıyorum.Nesnelerin bir listesi nasıl IHttpActionResult olarak döndürülebilir?
Bu, GET isteği için denetleyici yöntemimdir. URL ile iletilen belirli bir anketi olan tüm soruları geri vermek istiyorum.
// GET: api/Questions/5
[ResponseType(typeof(List<Question>))]
public Task<IHttpActionResult> GetQuestion(int questionnaireId)
{
var questions = from q in db.Questions
where q.QuestionnaireId == questionnaireId
select new Question()
{
Id = q.Id,
ImageLink = q.ImageLink,
QuestionnaireId = q.QuestionnaireId,
Text = q.Text
};
return questions;
}
Bu benim Soru sınıftır:
Bu çalıştıpublic class Question
{
public int Id { get; set; }
[ForeignKey("Questionnaire")]
public int QuestionnaireId { get; set; }
public string Text { get; set; }
public string ImageLink { get; set; }
public virtual Questionnaire Questionnaire { get; set; }
}
Ama return questions
üzerine bu derleyici hata gösterir:
Cannot implicitly convert type
System.Linq.IQueryable<finah_backend.Models.Question>
toSystem.Web.Http.IHttpActionResult
. An explicit conversion exists (are you missing a cast?)
Ben bir listesini almak istiyorum JSON içinde döndürülen soruların anketi sorgulandı, bir URL ile iletildi, yani api/question/2 ==> questionnaireId ile beni geri tüm sorular = 2.
Hata nedir veya herhangi bir istisna aldınız mı?Bence 'GetQuestion' yönteminiz, aslında geri döndüğünüzle eşleşmeyen dönüş türünden dolayı derlenmeyecektir. –
'System.Winq.IQueryable' türünün 'System.Web.Http.IHttpActionResult' türüne dolaylı olarak dönüştürülemiyor. Açık bir dönüşüm var (bir dökümün eksik mi?) –
Rick