formattazione uscita del codice di controllo CodeModel: mettere le linee tra le dichiarazioni dello spazio dei nomi

StackOverflow https://stackoverflow.com/questions/2845752

Domanda

sto facendo alcuni esperimenti con CodeModel di Visual Studio. Ho cercato di creare un file con due spazi dei nomi in là attraverso di VS Codice Modello:

CodeModel codeModel = projItem.ContainingProject.CodeModel;
codeModel.AddNamespace("Namespaces.FirstNamespace", "namespacestest.cs");
codeModel.AddNamespace("Namespaces.SecondNamespace", "namespacestest.cs");

l'uscita di tale codice è:

//file namespacestest.cs
namespace Namespaces.FirstNamespace {
}
namespace Namespaces.SecondNamespace {
}

Qual è quasi Quello che sto cercando. L'unico problema è che mi piacerebbe controllare la spaziatura: avere almeno una linea tra il primo e il secondo spazio dei nomi. Fa per caso qualcuno sa di un modo per raggiungere questo?

Questo è quello che voglio:

//file namespacestest.cs
namespace Namespaces.FirstNamespace {
}

namespace Namespaces.SecondNamespace {
}

Grazie

È stato utile?

Soluzione

Il codeModel.AddNamespace dichiarazione si ritorna un oggetto di CodeNamespace. potete trovare l'EditPoint dello spazio dei nomi utilizzando il vostro primo spazio dei nomi e quindi inserire una riga come questa.

CodeNamespace yournamespace = codeModel.AddNamespace(....);
EditPoint2 endEditPoint = yournamespace.GetEndPoint(vsCMPart.vsCMPartWhole).CreateEditPoint();
endEditPoint.InsertNewLine(1);

Non sono sicuro se questo ha messo la linea presso il luogo che si desidera, ma l'idea è quella di ottenere l'EditPoint e quindi utilizzarlo per inserire la linea.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top