调试时,仅对该调试会话保留对断点的更改.一旦调试器分离,断点就会恢复到"预调试"状态.
我可以理解这有时是有用的,并理解为什么它以这种方式默认.
但是 - 有没有人知道是否有一个选项可以禁用此功能(在VS2010中),这样如果我在调试期间删除/禁用/添加断点,则下次开始调试时更改会持续存在?
我正在运行独角兽,我正试图让零停机重启工作.
到目前为止,这是一个非常棒的酱油,主要的过程分叉和启动4个新工人,然后杀死旧的,每个人都很高兴.
我们的脚本发送以下命令来重启unicorn:
kill -s USR2 `cat /www/app/shared/pids/unicorn.pid`
Run Code Online (Sandbox Code Playgroud)
从表面上看,一切看起来都很棒,但事实证明,独角兽并没有重新加载生产.rb.(每次部署时,我们都会将config.action_controller.asset_host
值更改为新的CDN容器端点,其中包含预编译的资产).
以这种方式重新启动独角兽之后,资产主机仍然指向旧版本.进行真正的重启(即:停止主进程,然后从头开始再次启动独角兽)选择新的配置更改.
preload_app
被设置为true
在我们麒麟配置文件.
有什么想法吗?
我有一个接口(IRepository<T>
),目前正在为每个特定的存储库进行扩展,即:IUserRepository : IRepository<User>
.
这些接口中的每一个都具有相应的具体类,即:UserRepository : Repository<User>, IUserRepository
.
这些单独的存储库不添加任何其他功能,它们都是空接口/类,仅用于传递泛型.
我用StructureMap解决IUserRepository
到UserRepository
使用注册表与组装扫描仪和一些命名约定.
我希望这可以转向一种更优化的状态,而不是传递实例IUserRepository
并将其解析UserRepository
,我可以传递IRepository<User>
并解决它Repository<User>
.
这将消除创建这些额外的空接口和类的需要.
我无法找到一种方法来使用StructureMap的配置来设置这种通用映射.像这样的东西:
For(typeof(IRepository<>).Use(typeof(Repository<>)).WithTheGenericTypeFromTheInterfaceSuppliedAsATypeParameter();
Run Code Online (Sandbox Code Playgroud)
编辑
得到前几个答案之后,我想再澄清一下这个问题.
我不想为For
配置的位创建单独的类.我希望在我的代码中有以下类/接口:
IRepository<T> where T : Entity
Repository<T> : IRepository<T> where T : Entity
Person : Entity
Product : Entity
Order : Entity
Whatever : Entity
并按照惯例实现以下映射:
IRepository<Person> => Repository<Person>
IRepository<Product> => Repository<Product>
IRepository<Order> => Repository<Order>
IRepository<Whatever> => Repository<Whatever>
Run Code Online (Sandbox Code Playgroud)
但我不想为每个人创建一个映射,ala:
For<IRepository<Person>>().Use<Repository<Person>>();
For<IRepository<Product>>().Use<Repository<Product>>();
For<IRepository<Order>>().Use<Repository<Order>>();
For<IRepository<Whatever>>().Use<Repository<Whatever>>(); …
Run Code Online (Sandbox Code Playgroud) 在获得有关允许SaaS产品根据租户的内部Active Directory(或其他LDAP)服务器对用户进行身份验证的最佳方法的一些理论帮助之后.
托管应用程序,但要求租户可以将身份验证委派给其现有的用户管理提供程序(如AD或OpenLDAP等).Microsoft Online的托管交换机等工具支持企业AD同步.
假设客户端不想将端口389转发到其域控制器,那么最佳方法是什么?
我有一个WCF服务(假设TestService.svc
坐在services
MVC应用程序中的Area目录中.这个区域被合并到主应用程序中.该区域被调用content
.
路线已经设置,该区域工作正常.要访问控制器Index
上的操作,Home
我可以执行以下任一操作:
http://my-host/areas/content/index/home
要么
http://my-host/content/index/home
但是,SVC文件只能通过以下方式访问:
http://my-host/areas/content/services/TestService.svc
URL必须包含areas
目录,我无法直接访问它http://my-host/content/services/TestService.svc
.如果我尝试,我会收到错误404.
有没有办法设置应用程序,以便它通过与控制器相同的路由表路由SVC请求?我不想areas
用于服务.
基本的C#问题在这里.
在声明它时或在相关对象的构造函数中创建类属性/字段的实例有什么区别.例如:
public class MyClass
{
public MyObject = new MyObject();
}
Run Code Online (Sandbox Code Playgroud)
VS
public class MyClass
{
public MyObject;
public MyCLass()
{
MyObject = new MyObject();
}
}
Run Code Online (Sandbox Code Playgroud) 我为ReSharper 5安装了StyleCop和相关的插件.在烦恼之后我删除了插件和StyleCop,但是ReSharper仍在使用一些StyleCop行为 - 最明显的是将using
语句移动到命名空间声明中,而不是将它们保留在外部声明.
比如说你有以下来源:
using System;
using System.Web;
namespace Foo.Bar
{
////
}
Run Code Online (Sandbox Code Playgroud)
并且该文件位于该Foo/Bar/Widget
目录中,使用ReSharper的修复名称空间工具,我希望文件保持不变,但名称空间已更改为Foo.Bar.Widgets
(这是它在StyleCop出现之前展示的行为).
现在它重新排列文件:
namespace Foo.Bar.Widget
{
using System;
using System.Web;
////
}
Run Code Online (Sandbox Code Playgroud)
现在抛开人们对哪一个更好的个人偏好,我不喜欢它,它与我们现有的代码不一致.重命名命名空间后必须手动移动使用语句比手动重命名命名空间要长.
有谁知道如何纠正这个问题(我假设有一个文件或某些东西仍然在安装中,或者一个尚未恢复的配置).
Udi 在这里提到"人们已经换掉了NServiceBus的MSMQ层并插入了RabbitMQ".
我希望能够在最终目标上做同样的事情,即能够使用AMQP在Mono/Linux上运行使用NServiceBus构建的应用程序.
在潜入之前,虽然我想从可能已经做过这方面的人那里得到一些反馈,以避免陷阱,红鲱鱼等.
或者,如果方法是一项艰巨的任务,最好直接使用RabbitMQ,但如果可能的话,我想坚持使用NServiceBus.
我有一个似乎在表面上工作的自定义AuthorizationAttribute.当没有正确权限的用户通过浏览器请求操作时,会显示相应的消息.
我开始将此属性应用于HttpPost
执行删除等操作.即使响应正确,操作的主体仍会执行(在这种情况下,项目将被删除).
我希望能够做的是完全阻止action方法在授权属性失败时执行任何操作.这是AuthorizationAttributes的用途,还是我应该以另一种方式查看?
更新:
public override void OnAuthorization(AuthorizationContext filterContext)
{
Check.Require(filterContext != null);
if (service.HasPermission(requiredPermission))
return;
filterContext.HttpContext.Response.StatusCode = 404;
filterContext.HttpContext.Response.StatusDescription = "File not found";
}
Run Code Online (Sandbox Code Playgroud)
控制器操作正在按如下方式进行装饰:
[HttpPost, RequiresPermission(Permissions.CanDeleteContentItem)]
public JsonResult Delete(Guid id)
Run Code Online (Sandbox Code Playgroud) 任何人都可以推荐一个可以集成到OEM应用程序中的商业智能和报告应用程序吗?
主要要求是:
.NET中的所有这些优点都可以标记/集成到我们现有的Web应用程序的外观中.
权限需要解决我们的用户/组系统.
我发现了一些看起来不错的东西,但它们都是Java的,我不想让我们的客户为应用程序安装ASP.NET,然后只为报告安装Java,tomcat等.
谢谢
编辑
应该提到 - 我不能只使用SQL Server Reporting Services - 这需要与数据库无关(尽管它将连接到一个)并且需要支持各种数据源.
编辑2
好吧 - 多亏了发布这个问题,我在SO的一侧看到了一个广告弹出窗口,表面上的产品看起来很棒.
我将下载试用版并明天给它一个旋转,并回复我的发现.
c# ×5
.net ×2
asp.net ×2
asp.net-mvc ×2
amqp ×1
attributes ×1
breakpoints ×1
debugging ×1
deployment ×1
generics ×1
ldap ×1
msmq ×1
nservicebus ×1
rabbitmq ×1
reporting ×1
resharper ×1
ruby ×1
saas ×1
structuremap ×1
stylecop ×1
unicorn ×1
wcf ×1