![](/img/trans.png)
[英]Pass long HTML string as parameter to Web API from MVC Controller
[英]How to pass parameter DataTable from mvc application to web api?
我需要將DataTable作為參數從我的MVC應用程序傳遞到Web api。
我正在尋找一些代碼
public void ConvertToSomeType(DataTable dt)
{
/*This code would be on mvc application
}
public HttpActionResult GetData(SomeType st)
{
/*Here method should be convert sometype to DataTable*/
}
所以我期望從mvc應用程序發送的相同DataTable和WebAPI中接收的相同DataTable
如下創建源表
DataTable dt = new DataTable();
dt.column.add("Id");
dt.column.add("Name");
dt.rows.add("1","abc");
dt.rows.add("1","abc");
在webapi中期望相同的DataTable
public HttpActionResult GetData(SomeType st)
{
DataTable dt = SomeMethod(st);
}
您可以通過以下步驟選擇一種方法,
1)從MVC Controller將您的DataTable序列化為JSON,
public ActionResult GetDatatable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Id");
dt.Columns.Add("Name");
dt.Rows.Add("1", "abc");
dt.Rows.Add("1", "abc");
string json = JsonConvert.SerializeObject(dt);
//Call the Web API Controller action method with above string parameter via WebRequest or HttpClient
}
2)將輸入的字符串json反序列化為DataTable,例如
public IHttpActionResult GetData(string json)
{
DataTable dt = JsonConvert.DeserializeObject<DataTable>(json);
}
注意:您需要通過在軟件包管理器控制台中使用以下命令來為newtonsoft.json安裝NuGet軟件包
Install-Package Newtonsoft.Json -Version 12.0.1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.