FB3とWebAPI2で遊んでいます。私はデータベースからDataTableを埋めることができ、かなり簡単にJSONを返すことができました。ASP.net WebAPI 2を使用すると、Datatableの結果と共にいくつかのカスタムJSONを返すことができます
CURRENTLY:
[
{
ID: 10016,
CREATED: "2016-08-24T21:35:45",
MODIFIED: "2016-08-24T21:35:48",
KEYNAME: "TEST"
},
{
ID: 10017,
CREATED: "2016-08-24T21:36:38",
MODIFIED: "2016-08-24T21:36:41",
KEYNAME: "TESTINT",
}
]
しかし、今、私はこれがどのように行われるかを知っていることを、私は私が中に集まるだろういくつかの他の情報を追加したいと思います。ここ返すJSONがどのように見えるかのサンプルですプロセス。
が必要です:
[
Meta: {
status: "OK",
message: "All's Well"
},
Data: {
ID: 10016,
CREATED: "2016-08-24T21:35:45",
MODIFIED: "2016-08-24T21:35:48",
KEYNAME: "TEST"
},
{
ID: 10017,
CREATED: "2016-08-24T21:36:38",
MODIFIED: "2016-08-24T21:36:41",
KEYNAME: "TESTINT",
}
]
コードを最初にJSONの結果は以下のようになります取得するには:結果のJSONは、次のようになります、しかしこの時点で
[Route("PerformSelectOnSettings")]
[HttpGet]
// GET: Connect/TestDBConnection
public IHttpActionResult PerformSelectOnSettings()
{
Connection selectconnection = new Connection(fbconndetails.DBHost, string.Concat(fbconndetails.DBPath, fbconndetails.DBFile), Convert.ToInt32(fbconndetails.DBPort), fbconndetails.DBUser, fbconndetails.DBPassword, fbconndetails.DBConnectionLifeTime, fbconndetails.DBPooling, fbconndetails.DBMinPoolSize, fbconndetails.DBMaxPoolSize);
DataTable result = new DataTable();
string sqlcmd = "select * from settings";
using (selectconnection.fbconnect)
{
try
{
selectconnection.fbconnect.Open();
FbTransaction fbtrans = selectconnection.fbconnect.BeginTransaction();
FbCommand fbcmd = new FbCommand(sqlcmd, selectconnection.fbconnect, fbtrans);
using (FbDataReader fbsqlreader = fbcmd.ExecuteReader())
{
try
{
result.Load(fbsqlreader);
}
catch (Exception e)
{
ExceptionsLogByFile logger = new ExceptionsLogByFile();
logger.LogException(e);
}
}
}
catch (Exception ex)
{
ExceptionsLogByFile logger = new ExceptionsLogByFile();
logger.LogException(ex);
}
finally
{
}
selectconnection.fbconnect.Close();
return Json(result);
}
}
I最初の部分をJSONの結果に追加する方法が本当に失われました。私はいくつかの調査をしましたが、私が探しているものは完全にはわかりません。
リンクやヘルプは大変ありがとうございます!
データをバインドするためにモデルクラスを使用していますか? –
必要なデータ構造を作成します。 2つのプロパティを持つもう1つの 'POCO'です。 –
ありがとうございました@AmitKumarGhosh私はPOCOに関する私の研究を行い、独自のデータ構造を作成し、クエリを通して構築されたDataTableを通過させました。すべてが期待どおりに機能します。面白いことに、私は昨晩中途半端でしたが、私は確信が持てなかったので、その実装から取り戻しました。本当にヒントを感謝します。 – CSharpNewb