問題タブ [portable-class-library]

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 投票する
4 に答える
4349 参照

windows-8 - Windows ランタイム コンポーネントとポータブル コード ライブラリの選択

Windows Phone 8 と Windows 8 の間でコードを共有する場合、開発者にとって 2 つの主要なオプションは、1) Windows ランタイム コンポーネントと 2) ポータル クラス ライブラリです。

Windows ランタイム コンポーネントは WinRT を使用し、サポートされているすべての言語に投影できます。異なるプラットフォームで使用する場合、別のプロジェクト (バイナリ) にリンクされたファイルが必要です。ただし、これらは利用可能な WinRT API の 90% を共有しています。

ポータブル クラス ライブラリは、プラットフォーム間でバイナリ互換性を持つ BCL のサブセット (場合によっては重要なサブセット) です。WinRT アプリケーションだけでなく、Silverlight、Xbox などの他のプロジェクト タイプでも使用できます。

開発者が "共有戦略" を選択する場合、Windows Phone 8 と Windows 8 の間でコードを共有するための最良の方法はどのプロジェクト タイプですか? ありがとう。

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

windows-phone-8 - Windows Phone 8 をターゲットとするポータブル クラス ライブラリ プロジェクトにサービス参照を追加する方法

奇妙な動作が見られ、何か間違ったことをしているのだろうか、それともこれが原因なのだろうかと思います。PCL を使用する場合、Windows Phone 7 をターゲットにします。その時点で、サービス リファレンスを追加できます。ターゲットを Windows Phone 8 に変更します。その時点で、サービス参照を追加できなくなります。

WP8 をターゲットとする PCL プロジェクトにサービス参照を追加する方法はありますか?

前もって感謝します。

0 投票する
0 に答える
222 参照

.net - Microsoft ポータブル クライアント ライブラリ - MessageContractAttribute isWrapped が定義されていません

Microsoft のポータブル ライブラリ ツールを使用して、Silverlight と WPF アプリケーションの両方で使用できる共通の "ポータブル" プロジェクトを作成しようとしています。

サード パーティの Web サービスへのサービス参照をポータブル プロジェクトに追加する際に問題が発生しました。ポータブル クラス ライブラリは MessageContractAttribute クラスのisWrapped属性をサポートしていないようです。たとえば、Silverlight アプリケーションでクライアント スタブを直接作成すると、スタブは次のようになります。

しかし、私のポータブル プロジェクトでは、IsWrappedプロパティの設定が欠落しており、次のようになっています。

手動でも設定できないようです。利用できない/未定義です。その結果、Web サービスの SOAP リクエストに不要なラッパー タグが含まれ、サーバーが不正な形式のリクエスト エラー メッセージを返します。

これに対する既知の回避策はありますか?ラッパーをオフにする他の方法はありますか、または IsWrapped プロパティが利用できない理由を誰かが知っていますか?

これを機能させることができれば、私の WPF と Silverlight ソリューションで共有できれば素晴らしいことです。

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

c# - ポータブル クラス ライブラリにカスタム例外を実装する

.NET のカスタム例外を設計する場合、MSDN は次のガイドラインを提供します。特に、ガイドラインでは、カスタム例外について次のように述べています。

  • シリアライズ可能である必要があります。つまり、属性を実装ISerializableして装飾する必要があります。[Serializable]
  • (逆) シリアライゼーション コンストラクターを実装する必要がありprotected CustomException(SerializationInfo info, StreamingContext context)ます。

ただし、ポータブル クラス ライブラリSerializableAttributeでは、ISerializableとのどちらもSerializationInfoサポートされていません。

.NET Framework と 1 つ以上のプラットフォームを同時に対象とするポータブル クラス ライブラリでカスタム例外を十分に設計するにはどうすればよいですか?

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

c# - System.Tuple はポータブル クラス ライブラリのどこにありますか?

何かが間違ってインストールされている可能性があるかどうかはわかりませんが、C# ポータブル クラス ライブラリをターゲットにすると、欠落.NET for Windows Store apps, .NET Framework 4.5, Silverlight 4 and higher, Windows Phone 7 and higherしているエラーが発生します。System.Tuple

これはどうやってできるの?

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

javascript - Windowsランタイムコンポーネントからポータブルコードライブラリの非同期メソッドを呼び出す

バックグラウンド

Windows 8(ストアアプリとして)とWindows 7(WPFデスクトップアプリとして)の両方で利用できるアプリを構築しています。これらのアプリでは、大量のコンテンツ(約500以上のアプリケーション「ページ」)を閲覧できます。

私はそれらの間でコードの多くを共有することはできませんが、可能な限り共有したいと思います。そこで、.NET 4.5、Silverlight 4+、およびWindows 8を対象としたポータブルコードライブラリ(PCL)を作成しました。Win8アプリはJavaScriptで記述されているため(さまざまな理由で、この質問の一部ではありません)、Windowsもあります。 JavaScriptとPCLの間のプロキシとして機能するランタイムコンポーネント。つまり、JavaScriptからの非同期呼び出しは、最初にWinRTコンポーネントのメソッドを呼び出し、次にPCLの対応するメソッドを呼び出します。

問題

PCLで非同期操作をサポートするために、NuGetを介してMicrosoft.BclおよびMicrosoft.Bcl.Asyncパッケージをインストールしました。これらは、とりわけ、メソッドを非同期化するために必要なTaskクラスとTask <>クラスを検出しますが、それらは独自のアセンブリで実行します。WinRTコンポーネントには、TaskとTask <>がすでに定義されているため、これらのライブラリは必要ありません。問題は、WinRTコンポーネントにコードを追加して、Task <>オブジェクトを返すPCLのAsyncメソッドを呼び出すと、次のビルドエラーが発生することです。

WINMDEXP:エラーWME1007:参照'Assembly(Name = System.Threading.Tasks、Version = 1.5.11.0、Culture = neutral、PublicKeyToken = b03f5f7f11d50a3a)'を解決できませんでした。

私が試したこと

私はたくさんのことを試しましたが、出てくるかもしれない主な2つは次のとおりです。

  1. WinRTコンポーネントのapp.Configを変更して、アセンブリのbindingRedirectを追加します。
  2. タスクオブジェクトを内部で行う非同期呼び出しから戻し、Wait()を呼び出すことにより、PCL呼び出しを外部で非同期にします。Waitは、不可解な例外をスローするために戻ることはありません。

それで、これを達成する方法について何か考えはありますか?

ありがとう、
デーブ・パーカー

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

c# - ポータブル ライブラリで JSON を逆シリアル化する方法

ポータブル クラス ライブラリ (Win RT、WP8、Silverlight 5) に適した JSON フレームワークをご存知ですか?

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

c# - ポータブル クラス ライブラリと WebRequest.ContentLength

「.NET for Windows Store apps」および「Windows Phone 7.5 以降」をターゲットとするポータブル クラス ライブラリがあります。私は HTTP POST 要求を作成し、先週の時点で、バックエンドを担当する管理者は、.NET によってデフォルト設定されている -1 ではなく、0 の ContentLength を送信する必要があると判断しました。私は WebRequest クラスを使用していますが、必要に応じて HttpWebRequest を使用できるほど柔軟です。

通常は、WebRequest.Create を使用して ContentLength プロパティを設定します。PCL ライブラリでは、ContentLength プロパティは使用できません。「Content-Length」のキーを持つヘッダーを追加しようとすると、フレームワークは ContentLength プロパティを使用する必要があると不平を言います。

PCL で ContentLength を設定する方法についてのアイデアはありますか?

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

.net - ポータブルアセンブリで現在のメソッドのMethodInfoを取得します

WindowsPhoneおよびWindowsStoreアプリをサポートするポータブルアセンブリで現在の実行メソッド情報を取得したいのですが。ただし、このようなポータブルアセンブリMethodInfo.GetCurrentMethod()MethodBase.GetCurrentMethod()は使用できません。現在のメソッドのMethodInfoを取得するにはどうすればよいですか?