在Noda Time 1.3.1中,我们的.csproj文件引用了Profile 328,我们的.nuspec文件将结果放入
lib\portable-net4+sl5+netcore45+wpa81+wp8+MonoAndroid1+MonoTouch1+XamariniOS1
Run Code Online (Sandbox Code Playgroud)
对于Noda Time 2.0,我已将所有内容移至DNX/DNU(当然很快就会成为dotnet cli).但是,我们现在希望构建一个定期更新的包,其中包含来自IANA的最新时区信息.我们将构建一个版本,依赖于Noda Time 1.3.1,另一个版本依赖于Noda Time 2.0.0.
我喜欢到DNX/DNU内做到这一切依然,但它是我不清楚是否有告诉DNX/DNU这个目标框架的任何方式.请注意,我想让1.3.1的所有当前用户都可以使用它,它也依赖于1.3.1,因此我认为目标框架集基本上必须是相同的.
我尝试过的框架:
在每种情况下,都会dnu restore显示以下形式的错误:
"便携式-net40 + SL5 + win8的+ wpa81 + WP8" 是不受支持的框架.
我有一个可怕的怀疑,这基本上不是一个支持的用例,我需要坚持这个特定部分的常规csproj文件,但我认为值得问,看看我是否遗漏了一些东西.
(现在提出DNX问题3206 ...)
DNX环境:1.0.0-rc1,Windows 10 x64.
想象一下,我有三个解决方案:
这些解决方案中的每一个都有多个项目; 将所有项目都放在一个解决方案中是没有意义的,即使这样可以简化这一特定问题.
Application1和Application2中的各种项目依赖于Common中的项目.他们的project.json文件以正常方式表明依赖.虽然最终我想将工件从Common发布到NuGet服务器(内部或外部),但暂时从源代码构建所有内容是有意义的.
我可以通过编辑global.json(比如)Application1来做到这一点:
{
"projects": [ "src", "test", "../Common/src" ],
"sdk": { "version": "1.0.0-rc1-final" }
}
Run Code Online (Sandbox Code Playgroud)
有了这个,我可以dnu restore 从Application1目录执行...但不能从根目录执行.(错误是"无法找到依赖关系'Common'> = 0.0.0-*".)我可以dnu restore Application1从根目录运行,但不仅仅是dnu restore.
我已经尝试了很多方法来引用Common src目录(包括"./Common/src","Common/src","../sort-name/Common/src"),但是没有任何喜悦然而.在每种情况下,我都会收到上面显示的错误消息.我尝试过使用,dnu -v restore但似乎没有提供任何关于哪些目录被探测为基于源的包的额外信息.
那么,如何应的"../Common/src"可在解决global.json?这是我所描述的开发场景的合理方法,如果是这样只是提交针对DNX的错误的问题?
这似乎是一个常见的问题,我发现了几个Stack Overflow问题,但它们似乎都与MSBuild有关.
我试图通过在Visual Studio中右键单击我的asp.net 5 rc1项目并调用基于文件系统的发布配置文件来发布.
它的设置如下所示:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<CompileSource>False</CompileSource>
<_DefaultDNXVersion>dnx-clr-win-x86.1.0.0-rc1-final</_DefaultDNXVersion>
<UsePowerShell>True</UsePowerShell>
<IISCommand>web</IISCommand>
<WebRoot>wwwroot</WebRoot>
<WwwRootOut>wwwroot</WwwRootOut>
<IncludeSymbols>False</IncludeSymbols>
<Native>False</Native>
<IgnoreDNXRuntime>False</IgnoreDNXRuntime>
<publishUrl>C:\Source\CCollections\artifacts\bin\CCollections.Client.Web.Angular\Release\PublishOutput</publishUrl>
<DeleteExistingFiles>False</DeleteExistingFiles>
</PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
这产生了这个输出:
C:\Source\CCollections\src\CCollections.Client.Web.Angular>C:\Users\Christopher\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-final\bin\dnu.cmd publish "C:\Source\CCollections\src\CCollections.Client.Web.Angular" --out "C:\Users\Christopher\AppData\Local\Temp\PublishTemp\CCollections.Client.Web.Angular96" --configuration Release --runtime dnx-clr-win-x86.1.0.0-rc1-final --wwwroot "wwwroot" --wwwroot-out "wwwroot" --iis-command "web" Microsoft .NET Development Utility Clr-x86-1.0.0-rc1-16202 Executing script 'prepublish' in project.json npm WARN package.json ASP.NET@0.0.0 No description npm WARN package.json ASP.NET@0.0.0 No repository field. npm WARN package.json ASP.NET@0.0.0 No …
每当我通过project.json文件修改包时,我的引用区域会显示"错误 - 请参阅错误列表".错误列表将说"project.json中的依赖项已被修改.请运行"dnu restore"以生成新的锁定文件.
有没有办法在Visual Studio中执行此操作?我不得不加载2015年的Developer Command Prompt并cd到项目目录并通过那里运行命令,
如果我右键单击引用并选择"恢复包"(听起来应该这样做),它只是说上面的"查看错误列表".
我注意到,当我发布新的ASP.NET项目时,它会将所有非代码文件放在包中的根文件夹中.例如,这些文件最终到达:
没有必要在已发布的文件夹中包含这些内容.在旧的解决方案中,它就像修改文件的属性以排除它们一样简单.现在属性完全不同,并打开一个非常无用的对话框,您只能看到文件的路径.也许有可能采取其他方式吗?理想情况下,IDE应该足够聪明,不要发布这些常见文件,但对于某些自定义,它应该是一种排除它们的方法.
当然,一些额外的文件发布的问题当然不是很大,但排除它们也是有意义的.
PS可能的建议重复是不一样的,因为它只处理旧的项目/解决方案结构,而ASP.NET Core引入了一个新的,其他解决方案不适用.
我有相同的问题.我在我的project.json文件中添加了以下依赖项:
"dependencies": {
"EntityFramework": "7.0.0-beta4",
"EntityFramework.Core": "7.0.0-rc1-final",
"EntityFramework.SqlServer": "7.0.0-beta8",
"EntityFramework.Commands": "7.0.0-rc1-final"
},
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel",
"ef": "EntityFramework.Commands"
},
...Run Code Online (Sandbox Code Playgroud)
我用过dnu install EntityFramework并dnu install EntityFramework.SqlServer安装了这些包.由安装程序自动"EntityFramework": "7.0.0-beta4",在dependencies节点下编写.
问题/问题1:令我惊讶的是,当我EntityFramework提出我所提供的可用版本的智能时,它只是6.1.3!
问题2:当我使用编译我的应用程序时dnu build(我在节点下手动dnu restore添加EntityFramework程序集(.Core和.Commands)之后运行命令)dependencies我收到了一堆编译错误:
The type 'DbContextOptionsBuilder' is defined in an assembly that is not referenced. You must add a reference to assembly 'EntityFramework.Core, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null'.
D:\Projects\aspnet\apiservice\Models\SampleData.cs(12,41): …Run Code Online (Sandbox Code Playgroud)嘿伙计们,我正在学习本教程,以便在我的OSX中运行.NET Core:
If you choose to install Mono, select the universal installer to make sure you get the x64 version. Edge.js requires Mono x64.
If you choose to install CoreCLR], follow these steps:
brew tap aspnet/dnx
brew update
brew install dnvm
source dnvm.sh
dnvm install latest -r coreclr -alias edge-coreclr
Then install and build Edge.js:
brew install pkg-config
dnvm use edge-coreclr
npm install edge
Run Code Online (Sandbox Code Playgroud)
现在,我想删除所有这些东西,但我找不到路径.
我删除了dnvm与pkg-config用brew uninstall.订单怎么样?
谢谢.
仅在发布ASP.NET 5 Web应用程序时执行Gulp任务的最佳方法是什么?我是否需要添加执行Gulp命令的自定义构建事件?
cmd.exe /c gulp -b "C:\Projects\ProjectName\Source\ProjectName.Web" --gulpfile "C:\Projects\ProjectName\Source\ProjectName.Web\Gulpfile.js" publish
Run Code Online (Sandbox Code Playgroud)
或者,最好是否有办法BeforePublish通过Task Runner Explorer 将Gulp任务绑定到目标?
任何建议将非常感激.
我有一个引用类库项目的DNX控制台应用程序.我试图发布它并将其安装为全局命令.
控制台项目 Program.cs
namespace Vert.Commands
{
public class Program
{
public static void Main(string[] args)
{
var test = new ConsoleWriter();
test.Talk("Test", ConsoleColor.Cyan);
}
}
}
Run Code Online (Sandbox Code Playgroud)
控制台项目 project.json
{
"version": "1.0.0-*",
"description": "Test App",
"authors": [ "vrybak" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"compilationOptions": {
"emitEntryPoint": true
},
"dependencies": {
"CommandLib": "1.0.0-*"
},
"commands": {
"vm-test-job": "Vert.Commands"
},
"frameworks": {
"dnx451": {}
}
}
Run Code Online (Sandbox Code Playgroud)
类库:CommandLib文件:ConsoleWriter
namespace CommandLib
{
public class ConsoleWriter
{ …Run Code Online (Sandbox Code Playgroud) 有人尝试使用实体框架 - beta8迁移吗?每次运行dnx ef命令时,我都会得到以下信息
"错误:.请运行dnu restore以生成新的锁定文件"
运行dnu restore然后给出错误
找不到路径"c:\ users\Username\.dnx\packages\Owin\1.0.0\Owin.1.0.0.nupkg.sha512"的一部分
知道出了什么问题吗?
编辑
现在检查它和C驱动器上的路径是1.0而不是1.0.0 ..这似乎是问题的一部分.不确定这是否是正确的做法,但最终重命名文件夹