ASP에서 JSON 개체를 반환하는 중입니다.NET 페이지
제 특정한 상황에서, 저는 제 문제에 대한 몇 가지 해결책이 있습니다.나는 어떤 것이 더 실현 가능한지 알고 싶다.이 경우 서버 측 코드에서 JSON 객체를 반환하여 목표를 달성할 수도 있지만, 그 방법과 최선의 방법은 알 수 없습니다.
우선, aspx 페이지는 필요 없습니다.코드에서 반환된 응답만 필요하기 때문입니다.그럼 웹 서비스나 핸들러를 사용해야 하나요?아니면 다른 방법이 있나요?
결결결 실현 ??? ???은 JSON을 합니까?StringBuilder대상 aspx 페이지에 해당 문자열을 삽입할 수 있습니까?의사사 ?? ?? ?? ?? ? ???
당신의 아이디어에 감사드립니다.
안부 전해요,
케말
-----------------------------------------------------------
userlist.aspx 페이지에 JSON 개체가 있다고 가정하면 jQuery에서 사용합니다.
{"menu": {
"id": "color1",
"value": "color",
"popup": {
"menuitem": [
{"value": "Red"},
{"value": "Green"},
{"value": "Yellow"}
]
}
}} // example taken from the json.org/example page
이제 aspx 페이지에서 새 메뉴 항목을 추가하려면 어떻게 해야 합니까?제 질문은 좀 더 구체적일 것 같아요
aspx로 새로운 문자열을 합니다."{"value": "Blue"}타겟 페이지의 기존 아이템 리스트에 삽입하려면 어떻게 해야 하나요?아니면 이런 상황에 대한 올바른 접근법이 아닐까요?그렇지 않다면, 다른 방법으로 달성할 수 있을까요?
또한 이 목록에 새로운 아이템이 추가되었을 때 jQuery 이벤트를 실행하려면 어떻게 해야 하나요?
-----------------------------------------------------------------------------
내가 이 질문을 했을 때, 내가 그 문제에 접근하는 방식은 다른 측면이었다.되어 있지 않고 JSON을 JSON으로 에, 는 이 보다 할 수 되었습니다.@DavGarcia에도 시사하고 있습니다.
Page_Load에서 일반 출력을 지우고 자신의 출력을 기록해야 합니다. 예를 들어 다음과 같습니다.
string json = "{\"name\":\"Joe\"}";
Response.Clear();
Response.ContentType = "application/json; charset=utf-8";
Response.Write(json);
Response.End();
C# 개체를 JSON으로 변환하려면 Json 등의 라이브러리를 사용합니다.네트워크
다만, .aspx 페이지에 JSON을 출력하는 대신에, Web Service(asmx) 또는 WCF 를 사용하는 것을 검토해 주세요.이것들은 둘 다 JSON을 출력할 수 있습니다.
asp로 하는 것은 문제 없습니다.MVC에서 그렇게 하는 것은 가장 자연스러운 일이지만 표준 ASP에서도 가능합니다.
MVC 프레임워크에는 JSON을 위한 모든 종류의 도우미 클래스가 있습니다. 가능하다면 MVC-love에 대한 조사를 제안합니다.그렇지 않다면 MVC가 사용하는 JSON 도우미 클래스를 쉽게 가져와 asp.net의 컨텍스트에서 사용할 수 있습니다.
편집:
다음은 MVC를 사용하여 JSON 데이터를 반환하는 방법의 예입니다.이것은 컨트롤러 클래스입니다.이것은 MVC에서 즉시 사용할 수 있는 기능입니다.새로운 MVC 프로젝트를 작성하면 이 기능이 자동으로 생성되므로 특별한 것은 아닙니다.제가 하고 있는 것은 JSON이라는actionResult를 반환하는 것뿐입니다.호출하는 JSON 메서드는 컨트롤러 클래스의 메서드입니다.이것은 모두 매우 기본적인 디폴트 MVC입니다.
public ActionResult GetData()
{
var data = new { Name="kevin", Age=40 };
return Json(data, JsonRequestBehavior.AllowGet);
}
따라서 이 반환 데이터는 JQuery를 통해 Ajax 콜로서 호출할 수 있습니다.
$.get("/Reader/GetData/", function(data) { someJavacriptMethodOnData(data); });
ASP 사용.NET Web Pages 는, 기본적인 GET 의 예로서 1 페이지에 표시할 수 있습니다(가장 간단하게 동작할 수 있습니다).
var json = Json.Encode(new {
orientation = Cache["orientation"],
alerted = Cache["alerted"] as bool?,
since = Cache["since"] as DateTime?
});
Response.Write(json);
뒤에 코드가 있으면 이런 걸 쓰세요.
MyCustomObject myObject = new MyCustomObject();
myObject.name='try';
//OBJECT -> JSON
var javaScriptSerializer = new System.Web.Script.Serialization.JavaScriptSerializer();
string myObjectJson = javaScriptSerializer.Serialize(myObject);
//return JSON
Response.Clear();
Response.ContentType = "application/json; charset=utf-8";
Response.Write(myObjectJson );
Response.End();
따라서 MyCustomObject의 모든 속성을 사용하여 직렬화된 json 개체를 반환합니다.
언급URL : https://stackoverflow.com/questions/2422983/returning-json-object-from-an-asp-net-page
'programing' 카테고리의 다른 글
| HTML을 WordPress Woocommerce 단일 제품 페이지에 통합하는 방법 (0) | 2023.02.28 |
|---|---|
| 필드 유형을 변경하려면 어떻게 해야 합니다. (0) | 2023.02.28 |
| AngularJS: 모델 요소가 모델 배열에서 스플라이스된 경우 ng-repeat 목록이 업데이트되지 않음 (0) | 2023.02.28 |
| 내 HTML에서 WordPress 연락처 양식 7을 사용하는 방법 (0) | 2023.02.28 |
| Android에서 Post 매개 변수를 사용하여 HttpClient 및 HttpPost 사용 (0) | 2023.02.28 |