[css クラスの HTMLHelper 属性でインテリセンスを有効にする]
私はこのHTMLヘルパーを持っています:
public IHtmlString MyTextBoxFor<TModel, TProperty>(
this HtmlHelper<TModel> html,
Expression<Func<TModel, TProperty>> propertyExpression,
string cssClass)
{
// ...
}
「cssClass」パラメーターの値を渡すときに、アプリケーションで定義された CSS クラスの IntelliSense を Resharper に提供してもらいたいです。
Resharper が認識するコード アノテーション属性がいくつかありますが、メソッド パラメーターを CSS クラスとしてマークすることに直接関係していると思われるものはありません。
私が見つけた最も近いものは[HtmlAttributeValue(string name)]でした。次のように cssClass パラメータに適用しようとしました。
public IHtmlString MyTextBoxFor<TModel, TProperty>(
this HtmlHelper<TModel> html,
Expression<Func<TModel, TProperty>> propertyExpression,
[HtmlAttributeValue("class")] string cssClass)
{
// ...
}
しかし、それはうまくいきません。また、Resharper が入力されたクラスを認識し、jQuery セレクター式 (上記のヘルパーによって生成されたテキスト ボックスで動作する) の未知の CSS クラスについて私を悩ませるのをやめてくれれば、それは非常に素晴らしいことです。
編集: これは、アクション メソッドの "htmlAttributes" パラメーターに対して機能している種類の IntelliSense のスクリーンショットです。これは、パラメーターで [HtmlElementAttributes] 注釈を使用することによって実現されます。
文字列パラメーターに css クラスを配置し、css クラスを示す同じインテリセンスを表示できる同様の注釈が必要です。