본문 바로가기

ASP.NET MVC

POST와 GET을 사용할시 둘중에 하나가 없을 때..

*************************************************

POST방식으로 호출을 해도 되긴되는데.. 파라메터가 넘어가지 않는다.

단 같은 컨트롤러에 post방식의 메소드가 존재하지 않을경우 get방식을 호출한다~

그러니 반드시 get이던 post이던 명시를 해주어야 한다.

   

POST는 없더라도 GET은 호출 되는데… (GET호출시에 POST만 있어도 되는지는 모르겠다. 테스트 해보자!)

   

$(function() {

$("#VesselType").change(function() {

var vstype = $("OPTION:selected", "#VesselType").text();

alert(vstype);

$.ajax({

type: "POST",

url: "/Vessel/SelectVesselName",

//data: { "veselname": $("#VesselName").val(), "VesselType": $("VesselType > OPTION:selected").val()},

data: { "vesselType": $("OPTION:selected", "#VesselType").text() },

contentType: "application/json; charset=utf-8",

dataType: "json",

success: function(data, textStatus) {

$.each(data, function() {

   

//alert(data);

$("#VesselName").append("<option>" + this + "</option>");

//$("VesselName").append("<option></option>");

});

},

error: function(XMLHttpRequest, textStatus, errorThrown) {

alert(XMLHttpRequest);

}

});

});

});

 

 

Get방식 이다..

   

 

public JsonResult SelectVesselName(string vesselType)

{

List<Vessel> vss = new List<Vessel>();

List<string> vs = new List<string>();

using (FimsDBEntitie fims = new FimsDBEntitie())

{

var query = (from v in fims.Vessel

where v.VesselType == vesselType

select v.VesselName).Distinct();

   

//vss = query.ToList();

//var query2 = fims.Vessel.Distinct

   

//vss = query2.ToList();

//IQueryable<String> cityQuery =

//(from cust in db.Customers select cust.City).Distinct();

   

//foreach (String cityString in cityQuery)

//{

// Console.WriteLine(cityString);

//}

vs = query.Distinct().ToList();

}

   

return Json(vs);

}

'ASP.NET MVC' 카테고리의 다른 글

Jquery click , hover 이벤트 추가  (0) 2009.11.12
ASP.NET MVC - POST 전송  (0) 2009.10.15
MVC ActionLink Method  (0) 2009.10.15
ASP.NET MVC Controller와 View의 관계  (0) 2009.10.15
ADO.NET Entity Data Model Packaging Bug  (0) 2009.10.15