답변:
를 사용하여 ContentResult
일반 문자열을 반환 할 수 있습니다 .
public ActionResult Temp() {
return Content("Hi there!");
}
ContentResult
기본적으로 a text/plain
를 contentType 으로 반환합니다 . 오버로드 가능하므로 다음을 수행 할 수도 있습니다.
return Content("<xml>This is poorly formatted xml.</xml>", "text/xml");
ContentResult
않는 if (!String.IsNullOrEmpty(ContentType))
설정하기 전에 HttpContext.Response.ContentType
. text/html
첫 번째 예제에서 보았습니다. 현재 기본값이거나에 의해 교육받은 추측 HttpContext
입니다.
MediaTypeNames.Text.Plain
또는 .NET 프레임 워크 상수를 사용할 수 있습니다 MediaTypeNames.Text.Xml
. 가장 많이 사용되는 MIME 유형 중 일부만 포함하지만. ( docs.microsoft.com/en-us/dotnet/api/… )
메소드가 리턴 할 유일한 것임을 알고 있다면 문자열을 리턴 할 수도 있습니다. 예를 들면 다음과 같습니다.
public string MyActionName() {
return "Hi there!";
}
return
하나 보내는 데 사용되는 문장 string
이나 JSON
또는 View
우리가 사용해야하는 조건에 따라 Content
문자열을 반환합니다.
public ActionResult GetAjaxValue()
{
return Content("string value");
}
2020 년 ContentResult
부터는 위에서 제안한 대로 올바른 방법을 사용하지만 사용법은 다음과 같습니다.
return new System.Web.Mvc.ContentResult
{
Content = "Hi there! ☺",
ContentType = "text/plain; charset=utf-8"
}
컨트롤러에서보기로 문자열을 반환하는 두 가지 방법이 있습니다
먼저
문자열 만 반환 할 수는 있지만 HTML 파일에는 포함되지 않습니다. 브라우저에 jus 문자열이 나타납니다.
둘째
View Result의 객체로 문자열을 반환 할 수 있습니다
이 작업을 수행하는 코드 샘플은 다음과 같습니다.
public class HomeController : Controller
{
// GET: Home
// this will mreturn just string not html
public string index()
{
return "URL to show";
}
public ViewResult AutoProperty()
{ string s = "this is a string ";
// name of view , object you will pass
return View("Result", (object)s);
}
}
실행보기 파일에 AutoProperty을 가로 리디렉션됩니다 결과 보기를하고 보내드립니다 의
보기로 코드를
<!--this to make this file accept string as model-->
@model string
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Result</title>
</head>
<body>
<!--this is for represent the string -->
@Model
</body>
</html>
http : // localhost : 60227 / Home / AutoProperty 에서 실행합니다 .