问题标签 [webactivator]
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.
asp.net-mvc - 如何使用 app_start 或 webactivator 注册区域?
我想避免打电话
AreaRegistration.RegisterAllAreas()
在我的 global.asax 中,因为我试图将所有启动逻辑移动到 App_Start 文件夹内的各个类中。但是,我没有成功地让它工作。第一个选项尝试使用这样的代码:
PreApplicationStartMethod 来自 System.Web 命名空间。在这种情况下,注册区域的调用发生得太早。
第二种方法,基于David Ebbo 的这篇文章,使用 WebActivator: using System.Web.Mvc;
不幸的是,虽然没有抛出错误,但尝试导航到该区域会失败(就像从未发生过注册一样)。
使用程序集指令而不是从 Global.asax 直接调用从启动类中注册 ASP.NET MVC 5 中的区域的正确方法是什么?
更新 1:这是我的 AreaRegistration 代码:
由于某种原因,默认值被忽略,但导航到 /admin/home/index/0 可以。/admin、/admin/home 和 /admin/home/index 都是 404。
c# - 如何使用 Unity.AspNet.WebApi 解析 global.asax 中的类型
我已经通过 NuGet 将 Unity.AspNet.WebApi 安装到我的 Asp.Net WebApi 应用程序中,并且我的所有控制器都能够通过构造函数注入来解析类。简单易行。
但是我不确定如何解析 global.asax 中的类,因为我在这里没有直接访问 UnityContainer 的权限。我在下面尝试过,它似乎正在工作。有没有更好的办法?
此外,由于这是启动代码,因此不确定这是否与注册 UnityContainer 的 WebActivator 冲突。我担心在 Application_Start() 方法中是否总是准备好 Dependencyresolver。
powershell - NuGet:可以通过 Powershell 添加一行代码吗?
我有几个 NuGet 包放在一起,其中一个是所有其他人引用的公共项目。
这个公共项目将一个配置类插入到App_Start
文件夹中,然后 WebActivator 调用这个类的一个方法。
对于其他软件包之一,我希望在此方法中再添加一行代码,但我正在努力寻找一种方法来做到这一点。
我知道我可以非常简单地添加一个仅包含这一行代码的附加类,但如果可能的话,我更喜欢使用Install.ps1
powershell 脚本将代码行添加到现有配置类中。
使用经过专业处理的*.cs.pp文件将覆盖现有文件(或添加新文件),并且*.cs.transform不适用于此类文件。
我知道类在哪里,它叫什么,我知道方法叫什么,那么 Powershell 是否提供了一种在所述方法末尾添加一行的方法?
c# - WebActivator PreApplicationStartMethod 不起作用
我正在按照 onin 架构制作一个新项目。
我有一个名为“bootstrapper”的单独项目,其中包含 IOC 和 WebActivator。我的问题是包含 WebActivator 的类甚至没有在调试中加载!可能是我错过了什么?
configuration - 在代码中配置 Glimpse
Glimpse 当前在 MVC5 的 Web 配置中配置,如下所示:
是否有可能使用 web 激活器或从全局 App Start 调用的类来配置代码中的一瞥?
asp.net-mvc - 为什么 Azure CloudConfigurationManager.GetSetting 返回 null
我有一个在模拟器中本地运行的云服务 Web 角色项目,但在部署时不运行。给出的错误如下:
您可以在 github 上的堆栈跟踪中查看相关行的代码。
https://github.com/michael-lang/candor-common/
CloudTableProxy 中导致错误的行是:
由于它没有抛出自定义错误“尚未配置云连接名称。”,这告诉我传递给 CloudConfigurationManager.GetSetting 的 _connectionName 不为空。所以 CloudConfigurationManager 是为提供的名称返回 null 的调用。鉴于此名称在本地运行时确实返回了一个值,我不确定为什么在部署到我的云 Web 角色时找不到它。如果连接名称输入为拼写错误,那么它也无法在本地工作。可以肯定的是,这是我常用的日志配置,命名要使用的连接:
对于使用相同 Candor.Common 组件的云服务 Web 角色,我也有一个完全不同的解决方案,所以我不认为它们是问题所在。
我使用同一台笔记本电脑来开发这两种解决方案,因此两者都使用 Azure 2.2 工具版本。检查每个解决方案中云服务项目的属性可以验证这一点。
我检查了每个组件和 NuGet 包引用,以确保解决方案中没有版本不匹配。在工作解决方案和此非工作解决方案之间将相同的组件设置为 copy-local=true。它们也具有相同的绑定重定向。虽然这是我最大的问题,但现在已解决,然后才遇到此连接问题。
非工作服务部署配置:
我最近还尝试将这些相同的连接名称放在 Web 应用程序的 appsettings 中。这是对 3 年前评论的回应,即他们的代码在 RoleEnvironment.OnStart 之前执行。但是这种尝试仍然会导致同样的错误。
这是尝试的样子:
此错误代码确实在使用 WebActivator 2.0.6 的应用程序启动时运行,而我的工作解决方案使用 WebActivator 2.0.4。但是 WebActivator 的发行说明只显示了从 Debug 到“Retail”的编译更改以及两个版本之间的许可证更改,而这些更改是一年前的。
如果时间是问题,我还尝试在错误调用之前添加一个 Thread.Sleep(1000) ,但它也不起作用,所以我要删除它。
这是在工作和非工作解决方案中配置的第一个提供程序。
以下是 Web 应用程序错误使用的包的列表:
我的工作解决方案和非工作解决方案之间存在一些包差异,但我认为这些不适用于错误。我从 MVC 5.0 升级到 5.2.3,升级了 javascript 相关包,以及从 1.2.10 升级到 1.3 的 Candor.WindowsAzure。这似乎是相关的,但唯一的代码更改是替换批量更新方法的实现。
工作解决方案项目包:
c# - WebActivatorEx 在应用程序启动时导致 ArgumentException
在安装 WebActivatorEx nuget 包后尝试访问页面时,我不断收到以下 ArgumentException。
如果我删除 WebActivatorEx 包,一切都会再次运行,但我需要 WebActivatorEx 才能使用 DI。
我在网上找不到任何东西来暗示问题可能是什么。我尝试Startup
在命名空间中创建一个类,该类Pharma.Mvc
调用了一个静态方法Configuration
,但似乎无法解决问题。
此外,在我安装包之前,没有Pharma.Mvc
命名空间,也没有Startup
类。所以我真的很困惑为什么会这样。
当我构建应用程序时,我的目标是 ASP.NET 4.5.1 框架,但是我注意到它在底部的堆栈跟踪中读取Microsoft .NET 4 Framework Version:4.0.30319
,我不确定这是否正确。
c# - Windows 服务是否有等效的 WebActivatorEx?
我希望能够使用可以轻松以解耦方式初始化的 C# 程序集,以便在启动时设置一些(AutoMapper)配置。WebActivator允许我这样做。
但我也希望能够在我希望完全解耦的 Windows 服务主机环境中使用这个程序集。我可以使用与 WebActivatorEx 等效的东西吗?
ninject - WebActivatorEx 全局属性破坏 CI 构建
我正在尝试使用 Visual Studio Team Services CI 构建,但在进行 WebActivator 调用的 Ninject 类方面遇到了问题。
此代码在我的 NinjectWebCommon.cs 中执行:
这使用 Visual Studio 在本地构建/运行良好。但是,当我将项目推送到 VSTS 并尝试运行构建时,我收到此警告(这不可避免地会导致预期的编译错误):
如果我注释掉上面显示的全局属性,则 CI构建成功。
我很难准确指出问题出在哪里。错误消息很简单,但是 Visual Studio 和 VSTS 中的构建允许它在一个地方而不是另一个地方工作的区别是什么?我确信我可以通过在 Global.asax 中手动放置调用来防止这个问题,但这不是我想要的方向——Ninject 使用 WebActivator 调用是有原因的。
谢谢!
asp.net - WebActivator PreApplicationStartMethod 异常处理
如果在应用程序初始化中发生某些特定异常,如何显示自定义错误页面:
我可以为所有 500 个错误放置一个自定义错误部分,但我需要一个针对特定场景的自定义页面。可能吗?