サーバーに ajax 呼び出しを行ってデータを要求しています。例: http/get(SomeDataService)。コントローラーには、以下のようなデータ オブジェクトがあります。
API コントローラー:
public DataCollection getSomeData()
{
try{
// get the data in object and checking its null or not.
//If not null, will bind the data in ko viewModel.if null throw below exception.
}
catch(Exception e)
{
e. message(" No Data Found")
}
}
ここで、KO ビューモデルとビュー内に「データが見つかりません」というメッセージをバインドしたいと考えています。
これを行う方法を教えてください。KO、ASP.net は初めてです
実際に必要なものを再度投稿しています。1. Web API Ajax 呼び出しを行う
function GetData() {
var data = http.get(apiUrl)
.success(function (data) {
if (data != null )
{
// some stuff for success data
vm.getDataSuccess;
}
else {
vm.errorMessage();// server side exception message.
})
WebApi コントローラー:
public DataCollection GetSomeData() { var data = GetData(); if( data == null ){ throw new Exception("Data is null");
}
以下のようなビューモデルを作成しました。
var vm = { activate: activate, getDataSuccess: ko.observableArray(), errorMessage:ko.observable(), title: 'TopNews' };
divの1つのビューページにバインドします
-- <-div class="error" data-bind="text: errorMessage" />
上記の方法が正しいかどうかはわかりません。しかし、私はこのようにする必要があります。