我使用的是自定義擴展名爲.mcsx的文件,它們確實是CSharp文件。我想在Visual Studio 2012中的這些文件上獲得代碼完成,但是當我在VS中打開它們時,這些文件將被視爲純文本。Visual Studio將自定義擴展名視爲CSharp
我試過創建一個自定義的MEF擴展,它允許我將文件視爲具有基於csharp的內容類型,但是我沒有爲這些文檔獲取自動完成或代碼格式。我可能需要爲自定義內容類型調用自定義CSharp分類器,但我不確定。誰能幫忙?
自定義的ContentType低於:
static class ContentType
{
public const string Name = "CSScript";
[Export]
[Name(Name)]
[DisplayName("CSharp Script")]
[BaseDefinition("CSharp")]
public static ContentTypeDefinition CSharpContentType = null;
[Export]
[ContentType(Name)]
[FileExtension(".mcsx")]
public static FileExtensionToContentTypeDefinition CSharpFileExtension = null;
}
Jason,感謝您的聯繫。我已經按照這篇博文上的指示,但無濟於事。這篇文章是爲VS2010編寫的。你覺得VS2012的這個改變了嗎? –
您可以將.pkgdef文件發佈到某處,以便我可以看一下嗎? –