所以我有这门课
public static class MyClass
{
static MyClass()
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
哪个没有方法,字段或属性.它所做的就是将处理程序连接到其他地方定义的静态事件.
由于类型初始化程序永远不会被调用,因为从不实际访问静态类,所以事件不会被连接起来.
所以我希望能够通过反射ala来调用类型初始化器typeof(MyClass).TypeInitializer().Invoke(...),这MyClass会引发一个抽象类.
最终,该应用程序将具有其他静态类,其格式与业务规则相对应.在将任何内容保存到数据库之前,将触发与要保存的对象类型相对应的静态事件.因此,如果我想要做的事情最终无法实现,那么任何重构建议都必须遵循该结构.
编辑:
关于我正在尝试做什么,我可能不太清楚.基本上我有一个数据层,你可以在其中初始化a的实例,DataContext然后在SubmitChanges()调用时我检查ChangeSetforfor是否插入/更新/删除,并为每个要插入/更新/删除的类型触发静态事件.这一切都很有效,我只是想找到一种方法,在应用程序启动时将处理程序连接到事件.所以我玩的是这个:
static DataContext()
{
System.Reflection.Assembly.GetExecutingAssembly().GetTypes()
.Where(t => t.Namespace == 'Data.Business')
.ToList()
.ForEach( t => {
// invoke the static TypeInitializer here,
// so that it can wire up it's event handlers.
});
}
Run Code Online (Sandbox Code Playgroud)
我可以使用静态Initialize方法,但由于这些只应该初始化一次,我在想TypeInitializer.
编辑2:
我已经阅读了MEF,这确实提供了一种方法来做我想做的事情.
所以大约一半的时间我F5在VS2010中开始调试我的silverlight应用程序,调试符号不会被加载.这种疯狂似乎没有任何方法......
是否有其他人有类似的问题,如果是这样的话,你/你如何解决它们.
谢谢!
编辑:
我正在使用chrome,所以我切换到了IE,但是我仍然遇到了同样的问题.
所以我发现自己有一个难题.我们的应用程序中有一些旧的asmx Web服务,这些服务已经运行了很长时间.
突然间,他们停止了构建服务器(CI)的工作.我说停止工作,因为即使我导航到服务时显示服务描述,调用任何操作也不会路由到服务(Web窗体路由).我试图解决这个问题时出现了两个奇怪的问题.
1.)搁置所有挂起的更改,从TFS中获取最新信息,然后进行本地构建(除非我弄错了,否则我会在构建服务器上找到自我们每次签入后构建/推送的内容).我注意到我无法在本地复制错误.
2.)即使我无法在本地复制错误,我仍然怀疑路由,但是我们所有服务的路由都首先添加到表中,如下所示:"{service}.asmx/{*pathInfo}"我想这是作为安全预防措施添加的东西像MyService.svc甚至不应该把它带到路由器,因为文件实际存在,虽然我不确定该规则是否适用于MyService.svc/MyMethod
我不确定如何测试路由,即在哪里设置断点以了解我是否正在通过路由表查找特定请求,因此该区域中的任何指针都将受到赞赏,以及任何关于为什么会发生这种情况的其他想法.
谢谢!
我尝试VisualStateManager.GetVisualStateGroups在OnAttached自定义行为的覆盖中使用,以及在添加到AssociatedObject.Loaded该行为中的事件的事件处理程序中使用。两次我都得到一个空列表。
是否有另一种方法来获取为控件定义的视觉状态组,或者我应该附加到的另一个事件处理程序?
因为它被问到了,是的,控件有VisualStateGroups和VisualStates。
c# silverlight visualstatemanager attachedbehaviors silverlight-4.0
我试图通过':not()'过滤元素列表,jQuery似乎忽略了我的过滤器.
这是代码:
myElements.filter(':not(.someclass)');
jquery仍然选择所有myElements ...
c# ×2
silverlight ×2
.net ×1
.net-4.0 ×1
asmx ×1
debugging ×1
jquery ×1
reflection ×1
url-routing ×1
webforms ×1