問題タブ [breeze]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
149 参照

breeze - EntityManagerからエンティティをエクスポートする際のBreezeエラー

エンティティをエクスポートしようとすると、次のエラーが発生します。

"nullのメソッド'getProperty'を呼び出すことができません"

ただし、(saveChanges()を呼び出す前に)マネージャーキャッシュに削除のマークが付けられたエンティティがある場合のみ

これは私にエラーを与えます:

対照的に、saveChanges()を呼び出してからexportEntities()を呼び出す前にエンティティを追加または変更しても、エラーは発生しません。

これに関するどんな助けでも、非常にありがたいです!

0 投票する
3 に答える
1379 参照

breeze - マルチパートキーを持つエンティティの自動生成キー

外部キーと自己生成フィールドによって形成された複数列の主キーを使用して新しいオブジェクトを作成しようとしましたが、次のエラーが見つかりました。

マルチパートキーを持つエンティティのIDを自動生成することはできません。

今のところ、最も適切ではありませんが、キーを変更しますが、質問は次のとおりです。

すぐに自動生成されるマルチカラム主キーのサポートを計画していますか?

uservoiceにもリクエストを追加します。

挨拶。

ユースケースを説明するために編集します。

こんにちは、

確かに、外部キーと自己生成フィールドで構成される主キーを持つことは意味がない場合があります。

私のアイデアは、次のようなテーブルを作成することでした。

最初のステップとして、次のようなテーブルを作成しました。

ここで、ChildIDは自己生成フィールドでした。

だからあなたは私の質問を無視することができます。

挨拶。

0 投票する
6 に答える
4192 参照

typescript - Breeze.js型付きエンティティ

JaySvcUtilがJayDataに対して機能するのと同じ方法で、Breezeを使用して型付きエンティティを作成する方法はありますか?これにはTypescriptのサポートが含まれていますか?Breezeフレームワーク内に一般的なTypescriptのサポートもありますか?

0 投票する
2 に答える
221 参照

knockout.js - エンティティを拡張して、ナビゲーション プロパティを必要とする計算オブザーバブルを作成する

エンティティを拡張して、ナビゲーション プロパティを必要とする計算オブザーバブルを作成しようとしています。

問題は、オブザーバブルが作成されたときに、ナビゲーション プロパティがまだ存在しないことです。

これを修正するにはどうすればよいですか?

0 投票する
2 に答える
1665 参照

typescript - BreezeJS-複雑なクエリを作成するにはどうすればよいですか?

BreezeJS + ODataまたはWebAPIを使用して複雑なクエリを作成するにはどうすればよいですか?私ができるようにしたいのは、JayDataでこのようなもので、Northwindを参照データベースとして使用していますか?私の問題は、データベースを参照する側(定数と比較してフィールドではない)と複雑な論理ツリー(a ||(b && c))の両方を持つクエリを表現する方法がわからないことです。

私の他の質問は、TypeScript+クエリについてです。BreezeJSでクエリにArrow関数を使用するにはどうすればよいですか?したがって、式ビルダーの代わりに、次のように言う方法があります。

ご協力いただきありがとうございます。明らかな質問の場合は申し訳ありません。

0 投票する
3 に答える
2155 参照

breeze - そよ風の日付での作業

日付の操作に問題があります。

日付フィールドを持つオブジェクトがあります:

public DateTime FechaInicio {get; セットする;}

この定義により、データベースに次のフィールドが生成されます。

FechaInicio日時はnullではありません

Webサービスにリクエストを送信すると、次の形式で日付が(JSONで)取得されます。

"FechaInicio": "1982-12-02T00:00:00"

また、エンティティでFechaInicio()を呼び出すと、javascriptのDateオブジェクトが返されます。

新しいエンティティを作成すると、次の値が得られます。

結局のところ、私の本当の質問は、日付型フィールドに新しい値を割り当てるためにどの形式を使用する必要があるかということです。

編集:

いくつかのテストを行った後、プロパティにDateオブジェクトを割り当てると、次の行に到達するまですべてが正常に見えることに気付きました。

saveBundleStringified var = JSON.stringify(saveBundle);

saveBundleのコンテンツは次のとおりです。

およびsaveBundleStringified:

最終的にデータベースに保存されるのは、2012-12-19 23:00:00.0000000です。

SaveChangesの呼び出しの結果が返されると、関数updateEntityでキャッシュ内のエンティティとマージされます。このチェックはfalseを返すif(!core.isDate(val))です。結果として、間違った日付で新しいDateオブジェクトが作成されます。

私が間違っていたら訂正してください、でもそれが問題だと思います。

0 投票する
2 に答える
3638 参照

local-storage - SPA (html5 シングル ページ アプリケーション) でローカル データとリモート データを同期するためのベスト プラクティス/パターンはありますか?

jqueryMobile +ノックアウト+そよ風+ WebAPIを使用して、モバイルコンテキスト(信頼できないインターネット接続)でSPA(シングルページアプリケーション)について学ぶ簡単な「todo - helloworld」を書いています。

オフラインでの使用を有効にするために、WebApp は活用します

  • アプリケーションキャッシュ
  • ローカルストレージ

アプリは、データの読み込みと保存に可能な限りリモート データベースを使用する必要がありますが、オフラインの場合はローカル ストレージにシームレスに切り替え、オンラインに戻った場合はローカル/リモートの変更を同期できる必要があります。

質問に戻ります。アプリは Breeze の EntityManager を使用してデータを管理します (ローカル キャッシュとリモート同期)。

  • 「リモートデータベース」

不整合/同時実行の問題を軽減するために、2 つの localstorage キーを使用します。

  • リモート データベースのローカル コピー用の「localDb」(todo のリスト)
  • アプリがリモート データベースに送信できなかった変更の「localPendingChanges」

したがって、フローは多かれ少なかれ次のようになります (疑似コード):

このアプローチについてどう思いますか?めちゃくちゃですか?大丈夫ですか?マルチ ユーザー シナリオでの同時実行の問題についてはどうでしょうか。

0 投票する
2 に答える
243 参照

breeze - ConcurrencyCheck / Datatype

breeze.debug.jsの場合:

モデルにタイムスタンプがあります。なぜこれが推奨されないのですか?ASP.NetのEFチュートリアルは、タイムスタンプを使用します。Concurrencycheck列として何をお勧めしますか?

0 投票する
2 に答える
2815 参照

guid - Breeze: クライアントで新しいエンティティの GUID キーを作成するにはどうすればよいですか?

Breeze を使用して、エンティティの作成時に GUID キーを入力する最も簡単な方法は何ですか?

0 投票する
2 に答える
1762 参照

validation - サーバー側の検証

サーバー側のDbContext検証エラーをクライアントに戻す方法がわかりません。Breeze には、 などのいくつかの属性に反応するデフォルトのバリデーターがあることは理解していますRequiredが、他のすべての属性についてはどうでしょうか? クライアント側でチェックする Breeze 用のカスタム JavaScript バリデータを作成することもできますが、エンティティがサーバー側で有効であることも確認する必要があります。

たとえば、アプリケーションPersonには有効な電子メール アドレスが必要です。EmailAddress悪意のあるユーザーがやって来て、クライアントを通過して電子メール アドレスを取得し、バリデータを通過しないデータをサーバーに投稿します。これまでのところ、Breeze での私の経験では、電子メール アドレスが保存され、DbContextEntity Framework エラーが発生することはありません。

以下のモデルを想定すると、エンティティ検証エラーを取得する最良の方法は何ですか?

更新 1:

私が経験している問題を再現するための手順を次に示します。

  1. 指示に従って「Todo」サンプルを作成します ( http://www.breezejs.com/documentation/start-nuget )
  2. BreezeSampleTodoItem.cs新しいカスタム バリデータをファイルに追加します。

    /li>
  3. Descriptionフィールドを新しいカスタム バリデータで装飾します。

    /li>
  4. usingもちろん、適切な s (Systemおよび) を追加しますSystem.ComponentModel.DataAnnotations

  5. プロジェクトを実行します。
  6. 説明フィールドの 1 つに「エラー」と入力して保存します。

DbEntityValidationExceptionこれは、Breeze を介してエラーが発生したり、Entity Framework からスローされることさえあると予想される場所です。2台の別々のコンピューターで試しましたが、同じ結果が得られました。エンティティは、エラーがなかったかのようにデータベースに保存されます。実際、IsValidカスタム バリデータのメソッド内の任意の場所にブレークポイントを配置すると、呼び出されていないことがわかります。