Ho un progetto API Web ASP.NET e desidero aggiungere una pagina di Guida, ma desidero che si trovi in un progetto separato.Pagina di aiuto dell'API Web ASP.NET in un progetto separato
È possibile?
Ho un progetto API Web ASP.NET e desidero aggiungere una pagina di Guida, ma desidero che si trovi in un progetto separato.Pagina di aiuto dell'API Web ASP.NET in un progetto separato
È possibile?
È possibile riscrivere XmlDocumentationProvider
costruttore per una cosa del genere:
public XmlDocumentationProvider(string appDataPath)
{
if (appDataPath == null)
{
throw new ArgumentNullException(nameof(appDataPath));
}
var files = new[] { "MyWebApiProject.xml" /*, ... any other projects */ };
foreach (var file in files)
{
var xpath = new XPathDocument(Path.Combine(appDataPath, file));
_documentNavigators.Add(xpath.CreateNavigator());
}
}
Esso comprenderà tutti i file di documentazione XML che si elencare nella matrice. Dovresti anche assicurarti che il tuo progetto API Web di destinazione (e tutti i progetti del modello, se necessario) generi documentazione sulla build e copi nel posto giusto.
Si dovrebbe chiamare WebApiConfig.Register dal progetto API Web nel progetto di aiuto:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
GlobalConfiguration.Configure(MyApiProjectNamespace.WebApiConfig.Register);
}
Naturalmente è possibile, le pagine di aiuto lavorare su documentazione XML a cui si fornisce il percorso. Ma un progetto generalmente è una applicazione web. Vuoi la pagina di aiuto su una porta diversa durante lo sviluppo e in una diversa applicazione su IIS? Puoi spiegare un po 'di più sul tuo obiettivo esatto? – CodeCaster
Non voglio confondere il mio progetto API Web con tutte le risorse necessarie per la pagina della Guida, che è il motivo principale per cui desidero che il mio codice per la pagina della Guida sia in un progetto separato. – koryakinp
La pagina di aiuto viene creata nella propria area. Se ti attacchi con l'area e metti le risorse in quell'area, il tuo progetto non dovrebbe essere incasinato. –