[CSSクラスのHTMLHelper属性でIntelliSenseを有効にする]
私はこのHTMLhelperを持っています:
public IHtmlString MyTextBoxFor<TModel, TProperty>(
this HtmlHelper<TModel> html,
Expression<Func<TModel, TProperty>> propertyExpression,
string cssClass)
{
// ...
}
Resharperに、「cssClass」パラメーターの値を渡すときに、アプリケーションで定義されているCSSクラスのIntelliSenseを提供してほしい。
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」パラメーターに対して機能しているインテリセンスのスクリーンショットです。これは、パラメーターの[HtmlElementAttributes]アノテーションを使用して実現されます。
cssクラスを文字列パラメーターに入れ、同じインテリセンスがcssクラスを表示できるようにする同様の注釈が必要です。