問題タブ [asp.net-web-api-odata]
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.
json - ODataModelBuilder を使用する場合は、LowerCamelCase を有効にします
を使用すると、JSON の結果を camelCase に変換するのは簡単ODataConventionModelBuilder
です。
しかし、使用するときはどのように行われODataModelBuilder
ますか? このトピックに関するものは何も見つからないようです。
このように、プロパティごとに実行する必要があると思いbuilder...Property(x => x.Foo)...
ますが、関連するメソッドが見つかりません。
c# - PageSize と MaxTop の違い
[EnableQuery(PageSize=20)]
とはどう違い[EnableQuery(MaxTop=20)]
ますか?
私が知る限り、どちらも結果に上限を設定しています。
GET odata/Products?$top=100
どちらかを呼び出しても、20 の結果しか得られません。
c# - ODATA $metadata に名前空間を設定する
ODATA サービスによって公開されるすべてのエンティティの名前空間を変更したいと考えています。
現在、彼らは持っています:Core.DomainModel.Entities.Database
それを消費するとき、これは少し長いです.
経由で設定しようとしましbuilder.Namespace = "MyModel";
たが、効果がありませんでした。
次に、そのように各エンティティに設定する必要があると考えました
しかし、すべてのエンティティを通過する必要がある場合、それはすぐに手に負えなくなります:(
それから私はこれを試しました
しかし、それもすべてを含むわけではありません。ENUM、ComplexType、および一部のエンティティが正しい名前空間を取得していないことに気付きました... :/
だから私の質問はです。すべてのエンティティの名前空間を設定するにはどうすればよいですか?
asp.net-web-api - APN.NET WebAPI OData コントローラー - ポスト パラメーター バインディング
OData コントローラーで定義された Post メソッドで必要とされるよりも多くのプロパティが json データに含まれている場合、OData コントローラーへのポスト要求に問題があります。いわゆる過剰投稿は MVC コントローラーで許可されるはずですが、OData コントローラーはそれを受け入れないようです。次のサンプルを確認してください。
私は単純なエンティティクラスを持っています:
- SkillAffiliation は列挙型です。
Post メソッドを使用した単純な OData コントローラーは次のようになります。
問題は、サード パーティの Web コントロール コレクションを使用し、OData コントローラーを使用するはずのコントロールが追加の json プロパティを追加することです。基本的に POST 要求は次のようになります。
{"Name":"TEST2","ApplicableTo":"Vehicle","ApplicableTo_input":"Vehicle"}
そのため、追加の ApplyableTo_input プロパティがあります。残念ながら、これによりモデルの検証エラーが発生します。ModelState.IsValid プロパティが false に設定され、「プロパティ 'ApplicableTo_input' はタイプ 'Mango.Models.Skill' に存在しません。タイプによって定義されたプロパティ名のみを使用してください。」というエラー メッセージが表示されます。この余分なプロパティを追加することは明らかに彼らのソリューションのバグであり、次のリリースで修正される予定ですが、その時が来るまで回避策を見つける必要があります.
[Bind(Exclude="ApplicableTo_input")] 属性をポスト アクション パラメーターに追加しようとしましたが、うまくいかないようです。何か案は?
.net - ローカルホストでクライアントとサーバーに時差があるのはなぜですか
アプリケーションはローカルホストで実行されています。サーバーはクライアントより 1 時間早いです。
クライアント送信時刻:Sat Apr 25 2015 00:00:00 GMT-0400 (Eastern Daylight Time)
リクエストが送信されます: dateOfArrival: "2015-04-25T04:00:00.000Z"
サーバーが受信する時刻:{4/24/2015 11:00:00 PM}
との間に 1 時間の差があるのはなぜですか? どうすれば対処できますか? どういうわけか夏時間と標準時間に関連していると推測できます。
このコードを試すと:
実際、私は時間の一部だけに興味があります。私のデータベースでは、日付型として保持しています。でも、この時差のせいで、私の日は一日早くなってしまいます。
問題を処理するためにさまざまな方法を試しましたが、日時変換の世界で完全に迷子になりました! 私は localhost アプリケーションで迷っていましたが、実際のサーバーで何が起こるか想像できませんでした。
このQ&Aでも同様の問題が言及されていると 思いますが、それが重要かどうかはわかりません:
私のタイムゾーン: 東部標準時 (UTC-05:00)
Web API odata jsonシリアライザーについて、この投稿から、これ以外のものと言えます
ここに私のサーバーコードがあります:
クライアントはAngularjsでhttpパッチリクエストを送信しています
c# - セルフホステッド Web API アプリケーションで OData エンドポイントを構成する方法
OWIN セルフホステッド Web API 2 サービスを構築しています。このサービスで OData エンドポイントを公開する必要があります。
IIS でホストされる従来の方法には、App_Start/WebApiConfig.cs が含まれます。
ただし、私の自己ホスト型ソリューションには WebApiConfig.cs のようなものはありません
この OData 構成をどこでどのように指定できますか?
c# - Distinct を OData クエリに適用する
OData エンドポイントから個別の値のリストを取得したいと考えています。ただし、distinct または group by はまだサポートされていません。
私のURIクエリは次のようになります
私のコントローラー
何も動作しません:(
asp.net-web-api - 値なしで Odata.Count のみを取得する方法
値配列なしで応答ペイロードのデータ数のみを取得する方法はありますか?
Webapi 2.2 で ODataV4.0 を使用しています。現在、次のようなクエリを実行すると、すべての値とカウントが返されます。
http://odata/People?$count=true
のようなものが必要なだけ"@odata.count":1, "value":[]
です"value"
。
この仕事の機能を持つ唯一の方法はありますか?