msdn文檔說添加名稱空間導入到CodeNamespace.Imports集合。這使得他們的命名空間內(這是有道理的,因爲你將它們添加到命名空間)有沒有辦法讓CodeDom在命名空間之前放置語句
namespace Foo
{
using Bar;
//Code
}
但是我們的代碼庫的其餘部分已用空間外面聲明:
using Bar;
namespace Foo
{
//Code
}
是否有乾淨的方式來獲得CodeDom發出第二個版本?
編輯:產生第一個例子的代碼看起來是這樣的:
CodeNamespace ns = new CodeNamespace("Foo");
ns.Imports.Add(new CodenamespaceImport("Bar"));
CodeCompileUnit cu = new CodeCompileUnit();
cu.Namespaces.Add(ns);
new CSharpCodeProvider().GenerateCodeFromCompileUnit(cu, Console.Out, null);
是啊。這樣可行。耶伊necro答案! – 2011-02-04 23:03:42
謝謝你;我一直在想這個...對Frankenanswer來說是一個衷心的+1,對於spoooooky necrocomment讚揚necro答案也是+1。 :)和+♥♥,因爲這是幽靈般的壞東西和Frankenthings的正確時間。 ;) – shelleybutterfly 2012-10-31 07:50:49