2012-02-13 53 views
3

所以,我在我的MVC3網站上的一個控制器上有一個操作,我將它用作服務。返回類型是字符串,我想知道什麼是最好的消費方式?從MVC3中獲取價值Action

public class HomeController : Controller {  
    public string GetSomeValue(){   
     return "This is some value";  
    } 
} 

我應該使用WebClient類,如果是這樣,有什麼方法將最適合這個?我從來沒有使用過這個課,它看起來有點毛茸茸的?

這個問題是question的第2部分。

回答

1

你既可以使用Web客戶端或WebRequest對象,如果你想打電話從服務器爲您服務。

如果你只是想讀一個字符串,你可以使用這樣的:

using (WebClient client = new WebClient()) 
{ 
    string value = client.DownloadString("http://www.yoursite.com/Home/GetSomeValue"); 
} 
+0

感謝@slfan。這正是我所期待的。我想在閱讀前兩個答案之後,我的問題可能並不清楚。 – 2012-02-14 12:17:49

1

我不知道,如果你問的正確方法返回一個字符串,但在這裏它是:

public class HomeController : Controller {  
    public ActionResult GetSomeValue(){   
     return Content("This is some value");  
    } 
} 

在消費它的條款,我會使用Restsharp,使動作簡單地返回JSON字符串:

public class HomeController : Controller {  
    public ActionResult GetSomeValue(){   
     return Json("This is some value");  
    } 
} 
1

如果您試圖從控制器方法返回字符串值。

那麼簡單兼用

public ActionResult YourMethod(){ 
or 
public JSONResult YourMethod(){ 
............ 
return JSON(new {retunrvalue = "My Text"}, JSONRequestBehaviour.AllowGet); 
}