问题标签 [dnx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2072 浏览

c# - 使用 Roslyn 获取引用程序集中的接口实现

我想在我正在开发的框架中绕过一些经典的程序集扫描技术。

所以,假设我定义了以下合同:

这存在于 say 中Contracts.dll

现在,如果我想发现这个接口的所有实现,我们可能会做类似以下的事情:

不是一个很好的例子,但它会做。

现在,这些类型的程序集扫描技术可能表现不佳,并且全部在运行时完成,通常会影响启动性能。

在新的 DNX 环境中,我们可以将ICompileModule实例用作元编程工具,因此您可以将实现捆绑ICompileModuleCompiler\Preprocess项目的文件夹中,并让它做一些时髦的事情。

我的目标是使用一个ICompileModule实现来完成我们在运行时所做的工作,而不是在编译时。

  • 在我的参考资料(编译和程序集)和我当前的编译中,发现所有可实例化的实例IModule
  • 创建一个类,让我们ModuleList用一个产生每个模块实例的实现来调用它。

将该类添加到编译单元后,我们可以调用它并在运行时获取模块的静态列表,而不必搜索所有附加的程序集。我们本质上是卸载编译器而不是运行时的工作。

鉴于我们可以通过该References属性访问编译的所有引用,我看不到如何获得任何有用的信息,例如可能访问字节码,可能加载程序集以进行反射,或类似的东西.

想法?

0 投票
2 回答
6271 浏览

asp.net - 从 VS2015 发布后 DNX Web 命令抛出“无法解析项目”错误

这是关于 .net 核心的过时预发布版本。

我使用 Visual Studio 2015 的 beta/preview 在预发布的 ASP.Net 5(后来重命名为 asp.net 核心)中创建了一个基本项目,我已将该项目发布到文件系统并尝试运行它从那里使用命令

导致的错误是“无法解决项目”。我已经检查过 dnvm 使用的是默认框架。我发布的目录有 web、web.cmd、wwwroot 和 approot 文件夹。还有什么我应该检查的吗?

我正在使用:asp.net core 1.0.0-beta4 clr

0 投票
1 回答
507 浏览

c# - DNX Core 5.0 中的 Microsoft.ServiceBus

我正在尝试Microsoft.ServiceBus在针对dnx451dnxcore50框架的ASP 5项目中使用,并且在构建时说它找不到dnxcore50框架的命名空间。Microsoft.ServiceBus

我应该做些不同的事情还是暂时不支持dnxcore50Microsoft.ServiceBus?如果有,以后还会有吗?

0 投票
3 回答
1917 浏览

visual-studio-2015 - VS2015 中缺少 SpecFlow“生成测试定义”上下文菜单

我正在尝试 VS2015 并编写 SpecFlow 功能文件。当我右键单击该文件时,我找不到“生成测试定义”上下文菜单。这只发生在显然是 DNX 5.0 库的“类库(包)”中。

这是我的project.json:

我还添加了 SpecFlow Visual Studio 2015 扩展。

我在这里错过了什么吗?

但是,如果我在正常的类库中尝试同样的方法,它就可以正常工作。

0 投票
2 回答
3677 浏览

c# - 更新到 ASP NET 5 beta5 会破坏一切

我在更新到 beta5 时遵循了本指南,并且更新过程似乎已经奏效。

http://blogs.msdn.com/b/webdev/archive/2015/06/30/asp-net-5-beta5-now-available.aspx

要更新到 ASP.NET 5 Beta5,请使用以下步骤:

  • 如果您还没有 .NET 版本管理器 (DNVM),请安装它(它预装在 Visual Studio 2015 RC 中,或者您可以获得最新版本)
  • 从命令提示符将 DNX_FEED 环境变量设置为https://www.nuget.org/api/v2
  • 运行“dnvm upgrade” 在您的应用程序中更新您的 global.json 以指向 .NET 执行环境 (DNX) 的 beta5 版本
  • 还有你的 project.json 指向 beta5 包版本
  • 运行“dnu restore”运行“dnu build”并将您的代码迁移到需要的beta5

但是,我收到构建错误,说我缺少程序集。它抱怨 System.Void 等缺失。它也无法从 Microsoft.AspNet.MVC 中找到控制器:/

如果我恢复到 beta4,那么它会再次起作用。

我错过了什么步骤?

DNVM 列表(恢复为 beta4)

0 投票
0 回答
217 浏览

asp.net-core-mvc - 升级 VS2015RC MVC 模板到 beta5 依赖

将 VS2015RC 模板升级到 beta6 并将 project.json 中的所有依赖项升级到 beta5 时出现错误。

不确定它是否相关但必须删除 app.UseBrowserLink(); 从 startup.cs 开始编译。 https://github.com/aspnet/Home/issues/719#issuecomment-118632892

我还将 _globalimport 重命名为 _viewimports,但都尝试了,没有区别。

在 startup.cs 我可以看到对象的注入。

但是当布局页面有以下错误时

和下面的错误

0 投票
1 回答
441 浏览

asp.net - DNU 在 OSX Yosemite 上恢复未知标头

我已经尝试了几次,使用官方 Asp.Net 文档和其他地方的说明让 .Net 在我的 MacBook 上运行。最新的尝试是使用此处找到的 Yeoman 生成器指令。

但是,当我尝试运行 DNU Restore 时,总是会遇到相同的错误,尽管是针对不同的库。错误是“未知标题:”后跟一个因库而异的数字。这是一个示例(为简洁起见,仅包括前几行和最后几行):

我尝试删除 ~/.dnx/packages 的内容并从 ~/.dnx/runtimes 中删除旧版本的 dnx。目前我正在使用1.0.0-beta6-12170运行时。

有没有其他人遇到过类似的问题或想出了如何解决它?

编辑:

这是输出dnvm list

这是输出mono --version

0 投票
0 回答
343 浏览

asp.net-mvc - VNEXT 无法构建

所以问题是,在构建我的 VNEXT Web 应用程序期间,我收到以下错误:

错误 CS0518 未定义或导入预定义类型“System.Int32” OHL.Web.DNX Core 5.0 错误 CS0518 未定义或导入预定义类型“System.Object” OHL.Web.DNX Core 5.0

加上 760 个其他错误(基本语言级别)。它似乎已经失去了与 dnx 大楼基础的一切关系。

我该如何解决?我尝试将 dnvm 切换到 beta 5 并返回到 4,什么都没有。

谢谢

0 投票
2 回答
990 浏览

mysql - DNX 5.0 中的 MySql

我想问一下-是否可以在 DNX Core 5.0 中连接到 MySql 数据库?在我的项目中,我需要做 web api,并且我有 vNext 类库项目,它应该连接到 MySql 数据库并操作该数据库中的数据。但...

我安装了最新的 .net/connector。我已经下载了 MySql.Data NuGet 包,并在参考资料中将它添加到了 DNX 4.5.1 和 Core 5.0 中。但是我得到了错误功能,例如打开与我的数据库的连接、执行查询等在 DNX Core 5.0 中不可用。该代码也在 Visual Studio 2013 和 DNX 4.5.1 中运行。我无法找到如何在 DNX Core 5.0 中连接到 MySql 的任何答案(即使有可能也没有)。

建议我下载最新连接器/网络的源代码,并将 MySql.Data 的代码复制到新的 vNext 类库项目,并添加对我的类库的引用,该类库应该可以访问数据库。但我有大约 1600 个错误。我被告知要一一解决。但这似乎是更大的问题。看起来可以通过添加多个参考来解决,但我找不到适用于 DNX Core 5.0 的等效参考。这是一个好方法吗?

我将不胜感激任何帮助。谢谢你。

0 投票
5 回答
1423 浏览

asp.net-core - 你如何重新运行 dnx 。任何文件更改的红隼命令?

每当更改任何文件时,如何执行我的红隼服务器以重新启动?而不仅仅是停下来?

我尝试过

但服务器刚刚停止,我必须手动重新运行命令

我也尝试过使用 npm watch 命令,但这似乎只是绊倒了自己