私はJavascriptと組み合わせてAsp.netを初めて使いました。私のコントローラからデータを取得するために 'url'私が作成したフレームワークデータベース)。データの取得が成功しないため、エラーアラートが表示され続けます。エラーを取得する/ api/Questions/404(見つかりません)
私のコントローラ(コントローラ/ API/QuestionsController)
namespace Pasapalabra.Controllers.Api
{
public class QuestionsController : ApiController
{
private PasapalabraContext db = new PasapalabraContext();
// GET: api/Questions
public IList<Question> GetQuestions()
{
var questions = db.Questions.ToList();
return questions;
}
// GET: api/Questions/5
[ResponseType(typeof(Question))]
public IHttpActionResult GetQuestionById(int id)
{
Question question = db.Questions.Find(id);
if (question == null)
{
return NotFound();
}
return Ok(question);
}
}
}
マイビュー(ビュー/質問/ Index.cshtml)
function keepPlaying() {
var questions = getQuestions();
if (questions.length !== 0) {
getRandomQuestion('A');
} else {
gameOver();
}
}
function getQuestions() {
$.ajax({
url: '/api/Questions/',
type: 'GET',
dataType: 'json',
success: function (data) {
return data;
},
error: function (error) {
alert("Error");
}
});
}
いくつかのルーティングがありませんか? –
Routeconfig.csはQuestionsControllerとも呼ばれる別のコントローラにリダイレクトされますが、これはビューのためのもので、apiではなくApiフォルダ内にないので問題はないと思います:routes.MapRoute( name: "Default"、 URL: "{コントローラ}/{アクション}/{ID}"、 デフォルト:new {コントローラ= "質問"、アクション= "インデックス"、id = UrlParameter.Optional} ); –