C#の拡張方法PocketPC Windows CE
-
13-09-2019 - |
質問
拡張手法の利用CEの枠組みでも見ることができますか?私は拡張手法のための文字列をwindows formsプロジェクトはそもそも太陽系の構築にPocketPCます。
きっかけになるかもしれないとこうすることができないという見出しがなかなかできませんの為に関する情報拡張方法PocketPC.
編集: Ooopsこれは私の間違いです。私の拡張方法Visual Studio2008しPocketPCのプロジェクトの収集、Visual Studio2005、かといっくことになる時間の私の人生の思いきます。謝のための答えをくれました。
解決
ため、サンフランシスコの混乱です。拡張手法の特徴は、コンパイラ、必ずしも特定のバージョンの枠組みそのための拡張方法に使用できるプラットフォームがバージョンのコンパイラが対応拡張り出す方法。
C#3.0でコンパイラでダウン目標-2.0の枠組みの支援の拡張手法となるようにコンパクトの枠組み
の枠組みで実際に提供のための拡張方法のExtensionAttribute.しかしこい機能に関連したときを定めることができない場合に申請できません。こちらはブログを書いたの
他のヒント
はい、彼らはCF 3.5でサポートされています。あなたがCF 2.0を使用している場合は、ExtensionAttributeを定義する必要がありますし、その後、彼らは動作します。
// this is a definition of a 3.5 class for use in 2.0. If we upgrade to target CF3.5, we will need to remove it...
namespace System.Runtime.CompilerServices
{
public class ExtensionAttribute : Attribute { }
}
namespace TestExtension
{
public static class Extensions
{
public static int TestMethod(this string value)
{
return value.ToString();
}
}
}
これは<のhref = "http://dvanderboom.wordpress.com/2008/04/11/using-extension-methods-to-manipulate-control-bitmaps-in-に応じCompact Frameworkのではサポートされていますコンパクトなフレームワーク/」のrel = "nofollowをnoreferrer">このブログ記事で。しかし、私は彼らがCompact Frameworkのバージョン3.5を必要と期待しています。あなたはどのバージョンを使用していますか?
あなたはどのようなフレームワークのバージョンを標的にしていますか?あなたはVS2008からCF 2.0をターゲットにしている場合は、あなたがExtensionAttributeを宣言する必要があるかもしれません...
namespace System.Runtime.CompilerServices
{
[AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class
| AttributeTargets.Method)]
public sealed class ExtensionAttribute : Attribute {}
}
あなたは<のhref = "http://www.simonrhart.com/2008/11/extension-method-support-in-compactに係る小型ハックを通じて、.NET Compact Frameworkの2.0とVS2008でそれを使用することができます」REL = "nofollowをnoreferrer">こののブログの.htmlます。