Есть ли способ сделать, чтобы CodeDom поместил операторы использования перед пространством имен

В документации MSDN говорится, добавляют, что пространства имен импортируют в CodeNamespace. Набор импорта. Это помещает их в пространстве имен (который имеет смысл, начиная с Вашего добавления их к пространству имен),

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);
17
задан Josh Sterling 4 May 2010 в 14:59
поделиться