小编Mas*_*ity的帖子

也许通过反射调用静态类型初始值设定项

所以我有这门课

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,这确实提供了一种方法来做我想做的事情.

c# reflection

3
推荐指数
2
解决办法
1191
查看次数

Silverlight 4和VS 2010:调试符号未加载

所以大约一半的时间我F5在VS2010中开始调试我的silverlight应用程序,调试符号不会被加载.这种疯狂似乎没有任何方法......

是否有其他人有类似的问题,如果是这样的话,你/你如何解决它们.

谢谢!

编辑:

我正在使用chrome,所以我切换到了IE,但是我仍然遇到了同样的问题.

debugging silverlight visual-studio-2010 silverlight-4.0

3
推荐指数
1
解决办法
4006
查看次数

ASMX操作404s,但是ASMX服务描述没有,url路由问题?

所以我发现自己有一个难题.我们的应用程序中有一些旧的asmx Web服务,这些服务已经运行了很长时间.

突然间,他们停止了构建服务器(CI)的工作.我说停止工作,因为即使我导航到服务时显示服务描述,调用任何操作也不会路由到服务(Web窗体路由).我试图解决这个问题时出现了两个奇怪的问题.

1.)搁置所有挂起的更改,从TFS中获取最新信息,然后进行本地构建(除非我弄错了,否则我会在构建服务器上找到自我们每次签入后构建/推送的内容).我注意到我无法在本地复制错误.

2.)即使我无法在本地复制错误,我仍然怀疑路由,但是我们所有服务的路由都首先添加到表中,如下所示:"{service}.asmx/{*pathInfo}"我想这是作为安全预防措施添加的东西像MyService.svc甚至不应该把它带到路由器,因为文件实际存在,虽然我不确定该规则是否适用于MyService.svc/MyMethod

我不确定如何测试路由,即在哪里设置断点以了解我是否正在通过路由表查找特定请求,因此该区域中的任何指针都将受到赞赏,以及任何关于为什么会发生这种情况的其他想法.

谢谢!

.net webforms url-routing asmx .net-4.0

3
推荐指数
1
解决办法
3907
查看次数

Silverlight:VisualStateManager.GetVisualStateGroups 没有,我怎样才能获得它们?

我尝试VisualStateManager.GetVisualStateGroupsOnAttached自定义行为的覆盖中使用,以及在添加到AssociatedObject.Loaded该行为中的事件的事件处理程序中使用。两次我都得到一个空列表。

是否有另一种方法来获取为控件定义的视觉状态组,或者我应该附加到的另一个事件处理程序?

因为它被问到了,是的,控件有VisualStateGroupsVisualStates

c# silverlight visualstatemanager attachedbehaviors silverlight-4.0

3
推荐指数
1
解决办法
2624
查看次数

jQuery:':not()'的正确语法

我试图通过':not()'过滤元素列表,jQuery似乎忽略了我的过滤器.

这是代码:

myElements.filter(':not(.someclass)');

jquery仍然选择所有myElements ...

jquery

1
推荐指数
1
解决办法
107
查看次数