Voglio:Come posso creare una libreria di classi .NET Core e farvi riferimento da un progetto .NET 4.6?
- Fai una libreria di classi che definisce alcune interfacce e classi helper semplici generiche. Si baserà su raccolte generiche e su
IQueryable<T>
ma non su dipendenze di terze parti (beh,). - Essere in grado di fare riferimento a questa libreria di classi da qualsiasi luogo (in particolare UWP, net46 e ASP.Net Core RC2)
- Idealmente, utilizzare il sistema project.json ovunque, anche se sono pronto a sacrificarlo se necessario.
- Pubblica la libreria finita a un feed NuGet e da lì lo usano in altre applicazioni
Quando si crea il mio progetto di libreria di classi in Visual Studio 2015,2, ho trovato il modello Class Library (.NET Core)
, in cui si afferma
Un modello di progetto per la creazione di una libreria di classi come pacchetto NuGet che può indirizzare qualsiasi piattaforma
Qualsiasi piattaforma! Brillante ... Ma non riesco a farlo funzionare. Dopo un sacco di giocherellare, Attualmente sono disponibili le seguenti project.json
(Probabilmente ho completamente rotto da ora):
{
"title": "My Really Useful Class Library",
"copyright": "Copyright © 2015-16 Tigra Astronomy, all rights reserved",
"description": "Really neat stuff",
"language": "en-GB",
"version": "1.0.0-*",
"dependencies": {
"JetBrains.Annotations": "10.1.4",
},
"frameworks": {
"netstandard1.5": {
"imports": "dnxcore50",
"dependencies": {
"NETStandard.Library": "1.5.0-rc2-24027",
"System.Linq.Expressions": "4.0.11-rc2-24027"
}
}
"net46": {
"frameworkAssemblies": {
"System.Collections": "4.0.*"
},
"dependencies": {}
}
},
"buildOptions": {
"xmlDoc": true
}
}
La prossima cosa che ho fatto è stato creare il mio progetto 4.6 .NET Framework nella stessa soluzione, e prova a fare riferimento alla libreria di classi. Mi permette di aggiungere il riferimento, ma sto ricevendo errori di compilazione, simboli non risolti, R # è infelice, ecc.
Immagino che non lo stia facendo bene (non è una sorpresa, davvero, mentre sto armeggiando nel buio).
Ho letto alcuni documenti su TFM, framework e librerie, ma nessuno di questi ha molto senso.
Che cosa ho veramente bisogno di mettere in project.json
di mia libreria di classi, in modo che possa fare riferimento dal mio NET Framework 4.6 app, e anche da UWP e ASP.NET core applicazioni RC2? È davvero l'approccio giusto o ho iniziato con il piede sbagliato?
Per favore mi scusi per non aver ancora selezionato una risposta 'corretta'. Sto ancora lavorando su una serie di scenari che sono stati aggiornati alle ultime versioni di RTM e agli ultimi strumenti di anteprima. –
Assicuratevi di controllare l'elemento '
StingyJack