2009-09-29 306 views
4

我升級到Visual Studio 2008,由於某種原因,當我創建新的類文件時,它會加載一個完全空白的文件,而不是給我基本的使用代碼和類名稱列表(即文件名)。Visual Studio 2008創建新類?

所以,如果我創建了一個名爲Order.cs一個新的代碼文件,它不再把默認情況下:

using system; 

public class Order 
{ 
} 

這是一個Visual Studio用戶的偏好?

+0

您使用的是C#配置文件嗎? – 2009-09-29 11:16:55

回答

11

你在評論中提到你按「新建 - >代碼」,不要,那應該是空白的。點擊Add> NewItem> Class,確保它的一個「Class」不僅僅是一個代碼文件。

0

可能您的默認語言尚未設置。

This link應該可以幫助您將默認語言更改爲c#(我假設您的問題是您要在Visual Studio中使用的語言)。

+0

nope。這似乎沒有任何幫助。 – leora 2009-09-29 13:48:14

2

檢查您的系統上有以下文件。
C:\ Program Files文件(x86)的\微軟的Visual Studio 9.0 \ Common7 \ IDE \的ItemTemplate \ CSHARP \代碼\ 1033 \ Class.zip

如果查不出來這Blog Post這對運行devenv的一個簡短的解釋/ installvstemplates或冰

devenv的谷歌/ installvstemplates

我曾經有過一個類似的問題,當我不得不安裝Visual webdeveloper,然後升級到完整的視覺工作室親。

如果這些文件實際上存在,我很遺憾我沒有這個問題,你可能想要搜索T4模板,因爲我認爲這是Visual Studio使用模板文件並使其成爲新的類文件完成使用類名稱等

+0

嗯。我有C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033 \ class.zip並且我在記事本中打開它,它看起來正確,但似乎並不適用當我單擊「新建 - >代碼「 – leora 2009-09-29 13:58:46

+0

你有沒有安裝Visual Studio Service Pack 1。只是在我們嘗試其他事情之前檢查一下。 http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E&displaylang=en – ozdeveloper 2009-09-29 22:42:35

+0

是vs 2008 sp1 – leora 2009-09-30 02:15:50

0

試穿VS命令提示符:

devenv.exe /installvstemplates 
+0

它不能識別這個命令 – leora 2009-11-25 11:45:08

+0

@oo oops,在寫入時更新了它。確保從vs命令提示符運行它。 – eglasius 2009-11-25 16:43:55

+0

@oo你在我改變之後試過這個嗎? – eglasius 2009-12-01 04:57:58

1

只是涵蓋所有基地...

爲「代碼文件」模板是空白的和「類模板「有你所期望的。

您確定您正在爲類選擇模板而不是代碼文件嗎?

0

嘗試運行devenv /resetsettings

4

如果您使用添加從Visual Studio命令提示符下運行 - >類或添加 - >新建項目,然後選擇類,而你仍然只獲得了一個空的代碼文件,那麼你的默認「類」模板丟失或混亂。如果您正在使用添加 - >代碼或添加 - >新建項目並選擇代碼,那麼「代碼」模板就是一個空的「.cs」文件,並且將作爲空白提供給您。

在C#Express中,此文件應位於「C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VCSExpress \ ItemTemplates \ 1033 \」中。完整(付費)版本的Visual Studio模板將是完全相同的文件,只有文件夾位置會有所不同。該文件應該是一個名爲「Class.zip」的標準zip文件。這個zip文件應包含兩個文件,如下所示:

首先文件應命名爲「Class.cs」,幷包含:

using System; 
using System.Collections.Generic; 
$if$ ($targetframeworkversion$ == 3.5)using System.Linq; 
$endif$using System.Text; 

namespace $rootnamespace$ 
{ 
    class $safeitemrootname$ 
    { 
    } 
} 

第二個文件應該被命名爲「Class.vstemplate」,幷包含:

<?xml version="1.0" encoding="utf-8"?> 
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005"> 
    <TemplateData> 
    <Name Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="2245" /> 
    <Description Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="2262" /> 
    <Icon Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="4515" /> 
    <TemplateID>Microsoft.CSharp.Class</TemplateID> 
    <ProjectType>CSharp</ProjectType> 
    <RequiredFrameworkVersion>2.0</RequiredFrameworkVersion> 
    <NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp> 
    <DefaultName>Class.cs</DefaultName> 
    </TemplateData> 
    <TemplateContent> 
     <References> 
      <Reference> 
       <Assembly>System</Assembly> 
      </Reference> 
      <Reference> 
       <Assembly>System.Data</Assembly> 
      </Reference> 
      <Reference> 
       <Assembly>System.Xml</Assembly> 
      </Reference> 
     </References> 

    <ProjectItem ReplaceParameters="true">Class.cs</ProjectItem> 
    </TemplateContent> 
</VSTemplate> 

如果你把所有這些都放到了位置,並且你仍然得到一個空白的代碼文件,那麼考慮重新安裝Visual Studio。

+0

+1。 VCSExpress在IDE文件夾中也有一個ItemTemplates文件夾,但這似乎是一個紅鯡魚!正如您在答案中所述,\ IDE \ VCSExpress \ ItemTemplates是要去的文件夾! – 2010-05-25 22:55:11