Вы можете продолжать использовать csproj для цели net45 и добавить project.json, что цели как «net45» и «netstandard1.x» рамки (используйте project.json of my library в качестве образца):
"frameworks": {
"net45": {
"frameworkAssemblies": {
"System.Data": "",
"System.ComponentModel.DataAnnotations" : ""
},
"buildOptions": {
"define": []
}
},
"netstandard1.5": {
"dependencies": {
"NETStandard.Library": "1.6.0",
"System.Data.Common": "4.1.0",
"System.Reflection": "4.1.0",
"System.Reflection.Primitives": "4.0.1",
"System.Threading": "4.0.11",
"System.Threading.Tasks": "4.0.11",
"System.ComponentModel.Annotations": "4.1.0"
},
"buildOptions": {
"define": [ "NET_STANDARD" ]
}
}
Обратите внимание, что вы можете определить условные константы компиляции для net45 или netcore конкретных фрагментов кода.
Если у вас есть project.json, вы можете подготовить NuGet пакет, который включает в себя как net45 и netstandard строит с помощью следующей команды:
> dotnet pack --configuration Release
Не забывайте, что «DotNet пакет» не использует информацию из файл nuspec и все метаданные должны присутствовать в project.json.
Если у вас нет настоятельной потребности, подождите. Это то, что я сделал для своих проектов с открытым исходным кодом. Нынешний инструмент - это слишком большая боль, и вы, вероятно, не хотите тратить свое время. Несколько обещаний были сделаны недавно Microsoft, https://blogs.msdn.microsoft.com/dotnet/2016/09/26/introducing-net-standard/ –
@LexLi благодарит. можете ли вы уточнить, какие текущие инструменты доступны? – developer82
http://dot.net есть все, что вам нужно. –