breeze-通过存储过程加载后保存

breeze-通过存储过程加载后保存,breeze,Breeze,我有一个加载了angular function调用存储过程的网格,我想在网格中添加一个文本框,并用breeze保存它(保存-插入的一部分将从sp加载的网格中提取列)。我该怎么做 以下是用于加载网格的角度(在我的控制器中): $scope.loadSales = function () { $scope.pageLoaded = false; PService.SalesStatus($scope.filter).then(function (data) {

我有一个加载了angular function调用存储过程的网格,我想在网格中添加一个文本框,并用breeze保存它(保存-插入的一部分将从sp加载的网格中提取列)。我该怎么做

以下是用于加载网格的角度(在我的控制器中):

    $scope.loadSales = function () {
        $scope.pageLoaded = false;
    PService.SalesStatus($scope.filter).then(function (data) {
        $scope.lists = data;
        $scope.getcount= data.length;               
        $scope.pageLoaded = true;                
    });
}
 <md-content ng-controller="ListCtrl" >
                <md-tabs>              
                    <md-tab label="{{getcount}}">
                        <table>
                            <tr> 
                                <td width="10%">Not Sold:</td>
                                <td width="40%">
                                    <select name="singleSelect" ng-model="filter.NotSold">
                                        <option value=0>no</option>
                                        <option value=1>yes</option>
                                    </select>
                                </td>
                            </tr>    
                        </table>                                              

                        <md-button ng-click="loadSales()">Load Report</md-button>
                        <md-button ng-click="Save()">Save</md-button>

                        <div style="overflow: auto; font-size: 12px;width: 100%;">      
                            <table style="font-size: 12px">

                                <tr ng-repeat="item in lists | limitTo:1" ng-model-options="{ updateOn: 'default blur', debounce: {'default': 1000, 'blur': 0} }">
                                    <td ng-repeat="(key, val) in item">
                                        <span>
                                            <label style="color: black">{{key}} </label>
                                        </span>


                                    </td>
                                    <td>Qty to Save </td>
                                </tr>
                                <tr ng-repeat="item in lists" ng-init="filter">
                                    <td ng-repeat="(key, val) in item">

                                        <span> <label>{{val}} </label></span></td>
                                    <td><input type="number" name="saveForLater" ng-model="saveQty" /> </td>
                                </tr>

                            </table>
                        </div>

                    </md-tab>
                </md-tabs>
            </md-content>
以下是我的网格html:

    $scope.loadSales = function () {
        $scope.pageLoaded = false;
    PService.SalesStatus($scope.filter).then(function (data) {
        $scope.lists = data;
        $scope.getcount= data.length;               
        $scope.pageLoaded = true;                
    });
}
 <md-content ng-controller="ListCtrl" >
                <md-tabs>              
                    <md-tab label="{{getcount}}">
                        <table>
                            <tr> 
                                <td width="10%">Not Sold:</td>
                                <td width="40%">
                                    <select name="singleSelect" ng-model="filter.NotSold">
                                        <option value=0>no</option>
                                        <option value=1>yes</option>
                                    </select>
                                </td>
                            </tr>    
                        </table>                                              

                        <md-button ng-click="loadSales()">Load Report</md-button>
                        <md-button ng-click="Save()">Save</md-button>

                        <div style="overflow: auto; font-size: 12px;width: 100%;">      
                            <table style="font-size: 12px">

                                <tr ng-repeat="item in lists | limitTo:1" ng-model-options="{ updateOn: 'default blur', debounce: {'default': 1000, 'blur': 0} }">
                                    <td ng-repeat="(key, val) in item">
                                        <span>
                                            <label style="color: black">{{key}} </label>
                                        </span>


                                    </td>
                                    <td>Qty to Save </td>
                                </tr>
                                <tr ng-repeat="item in lists" ng-init="filter">
                                    <td ng-repeat="(key, val) in item">

                                        <span> <label>{{val}} </label></span></td>
                                    <td><input type="number" name="saveForLater" ng-model="saveQty" /> </td>
                                </tr>

                            </table>
                        </div>

                    </md-tab>
                </md-tabs>
            </md-content>

@LisaSolomon,从这里开始,您最好编写一个标准的webapi来进行更新。从存储过程中提取的breeze实体不可更新,并且由于不知道通知存储过程的底层表结构,因此无法建议使用breeze.js-way更新/插入要管理的属性。我的方法一直是,如果我不能在客户端有机地表示模型,那么我不想尝试使用breeze对其进行有机地更新。

如果您向我们展示代码,这将非常有用。@TravisSchettler-我用一些代码更新了我的帖子。我已经全部设置好了,只是想知道如何在当前设置中使用它。。。我想用breeze来保存多余的手机。好的,谢谢。但我可能有两个选择。我是否应该(A)将存储的进程更改为视图(以某种方式),然后在breeze中使用它返回数据,然后使用breeze更新额外的td单元,对吗?或者(b)当你说写标准webapi时,转化为写一个存储过程来更新/插入这个新的td单元/字段,并在我有第一个存储过程时调用它?另外,让它成为一个表缩放函数怎么样。breeze喜欢吗?据我所知,breeze将与模型中的任何对象进行交互,就像它是一个表一样。或者,实际上,以实体框架的相同方式。如果breeze在客户机上具体化的实体具有主键,并且以已知方式与模型的其余部分相关,并且可以在实体框架内使用标准数据修改语法进行更新,那么它应该可以工作。所谓标准webapi,我指的是直接使用$http来更新/插入值而不是breeze的端点。Breeze设计用于处理完整的实体。实际上,我认为我无法将其放入视图中。但这个编辑过的字段实际上也会被检索到。我已经为它创建了模型和映射。我只需要为新实体提取sp返回的字段中的1个,然后就可以了。我能做到吗?工作的人告诉我我可以做,但我需要加载两次。不知道那是什么意思…是的,我想我明白你的意思。如果您尝试更新的实体是Widget,并且存储过程为您提供了该实体的密钥,那么一旦值更新,您就可以执行和EntityQuery来提取特定的Widget,更新它,然后保存更改。您不能只提取Widget的updated列,因为这将是Breeze中的一个投影查询,它会保留返回的实体、未跟踪和不可更新