ReSharper 8.X 附带了一个获取“包含类型名称”的宏,但我想做的是操纵该名称。我在 Visual Studio 2013 Web API 项目中使用它,我想要一个模板,它采用类名并构建必须调用的 URL。因此,例如,假设我有这个:
public class AnnouncementController : ApiController
{
//Want to put a template here!
[HttpGet]
public HttpResponseMessage GetActiveAnnouncements()
{
/// ...
}
}
现在我的 ReSharper 模板将如下所示:
/// This sample shows how to call the <see cref="$METHOD$"/> method of controller $CLASS$ using the Web API.
/// https://myurl.mydomain.com/api/$CONTROLLER$/$METHOD$
按照惯例,$Controller$ 是类名减去字母“Controller”。这是因为 ASP.NET MVC Web API 项目期望从 ApiController 派生的类以字符串 'Controller' 结尾,
由于这个类是 AnnouncementController,模板应该输出
https://myurl.mydomain.com/api/Announcement/GetActiveAnnouncements
Resharper 的内置宏可以给我一些我需要的东西,但我想编写一个自定义宏来获取包含的类型名称并从中删除“控制器”。我想直接这样做,而不是将包含的类型名称存储在另一个参数中。
另外,如何安装这个自定义宏?我在 Google 上四处搜索,发现很多死链接和为 ReSharper 版本 7 及更低版本编写的旧演练不适用于 ReSharper 8.x