@区、あなたの答えをありがとう。
まず、Breeze バージョン 1.4.0 を使用していることを忘れていました。
ネットワーク トラフィックを確認したところ、{MyUnmappedProperty: "testString} が実際にネットワーク経由で送信されていることがわかりました 。はい、確認しました。サーバーから送信された JSON に含まれています。
私が経験している動作を得るには、スパ テンプレートに 3 つの小さな追加が必要です。
todo.view.html
ボタン「myGetBtn」とスパン「mySpan」を角度バインディングで追加します。
...
<button data-ng-click="addTodoList()">Add Todo list</button>
<br/>
<p>
<button id="myGetBtn" ng-click="getTodos(true)">Get todos</button>
</p>
<article class="todoList" data-ng-repeat="list in todoLists">
<header>
<form data-ng-submit="endEdit(list)">
<span id="mySpan">myNotMappedProperty: {{list.MyNotMappedProperty}}</span>
<input data-ng-model="list.title"
data-selected-when="list.isEditingListTitle"
data-ng-click="clearErrorMessage(list)"
data-on-blur="endEdit(list)"/>
</form>
</header>
...
.Net POCO クラス TodoList に追加します
[NotMapped]
public string MyNotMappedProperty { get { return "testString"; } }
ではtodo.model.js
、コンストラクターを次のように変更します。
function TodoList() {
this.title = "My todos"; // defaults
this.userId = "to be replaced";
this.MyNotMappedProperty = "";
}
アプリを実行してログインに成功すると{{list.MyNotMappedProperty}}
、空の文字列が表示されます。次に [Get Todos] ボタンを押すと {{list.MyNotMappedProperty}}
、値 "testString" が表示されます。
どちらの場合もクエリは同じで、返される Json は次のとおりです。
[{"$id":"1","$type":"TodoTest.Models.TodoList, TodoTest","TodoListId":5,"UserId":"kostas","Title":"My todos","MyNotMappedProperty":"testString","Todos":[{"$id":"2","$type":"TodoTest.Models.TodoItem, TodoTest","TodoItemId":4,"Title":"dasdas","IsDone":false,"TodoListId":5,"TodoList":{"$ref":"1"}}]}]
追加したボタンを押さずに、最初に表示される「testString」を取得したいと思います。
私が提供した情報が動作を再現するのに十分かどうかわからないので、追加情報が必要な場合は教えてください.
ありがとうございました。