问题列表 - 第14240页

如何从Web浏览器控件中检索HTML .net(c#)中的帧

我知道我可以通过以下方式获取Webbrowser控件的HTML(源代码):

HtmlDocument htmldoc = webBrowser1.Document

但这只提供了"父页面"的html代码.如果网页使用框架,它不会返回整个页面的html代码,包括框架.

如何获得包含框架的完整HTML代码 - 或选择单个框架并获取该框架的html代码?

html c# frames webbrowser-control

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

IIS7和Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule注册问题

更新:

在Windsor 2.5中,程序集名称Castle.Windsor不是Castle.MicroKernel


我正在尝试将ASP.NET MVC应用程序部署到IIS7,我收到此错误:

看起来你忘了注册http模块Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule在你的web.config部分添加''

我的httpModules包含:

<httpModules>
   <add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.MicroKernel"/>
</httpModules>
Run Code Online (Sandbox Code Playgroud)

system.webServer处理程序部分包含

<handlers>
  <remove name="PerRequestLifestyle"/>
  <add name="PerRequestLifestyle" preCondition="managedHandler" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.Microkernel" verb="*" path="*.castle" />
</handlers>
Run Code Online (Sandbox Code Playgroud)

我添加了verb="*" path="*.castle"部分,因为当他们失踪时我遇到了错误.不确定他们的价值是否正确.

谁知道这里的问题是什么?

asp.net asp.net-mvc iis-7 castle-windsor web-config

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

ASP.NET MVC - 如何在登录页面上显示未经授权的错误?

在我的ASP.NET MVC应用程序中,我有大多数控制器装饰

[Authorize(Roles="SomeGroup")]
Run Code Online (Sandbox Code Playgroud)

当用户无权访问某些内容时,会将其发送到"〜/ Login",这是我的帐户控制器上的"登录"操作.

如何确定用户因未获得授权而已到达登录页面,以便我能够显示相应的错误?

.net c# asp.net asp.net-mvc authorization

45
推荐指数
3
解决办法
3万
查看次数

如何在上次迭代期间转义foreach循环?

foreach (Item i in Items)

 {
      do something with i;
      do another thing with i (but not if last item in collection);
 }
Run Code Online (Sandbox Code Playgroud)

c# list

4
推荐指数
2
解决办法
1807
查看次数

Django:模型更新时表单值不更新

我正在创建一个使用MultipleChoiceField的表单.此字段的值派生自另一个模型.这种方法工作正常,但是,我注意到(在生产服务器上)当我向相关模型添加新项目(NoticeType)时,表单不会动态更新.我必须重新启动服务器才能在我的MultipleChoiceField上显示新项目.

对NoticeType模型的任何更改(编辑项目或创建新项目)都不会传播到表单.重新启动生产服务器后,将显示更新.

任何想法为什么会这样?表格的相关部分如下.谢谢.

from django import forms 
from django.contrib.auth.models import User
from notification.models import NoticeType

class EditUserProfileForm(forms.Form):   
    CHOICES = []

    for notice in NoticeType.objects.all():
        CHOICES.append( (notice.label,notice.display) )

    notifications   = forms.MultipleChoiceField(
                        label="Email Notifications",
                        required=False,
                        choices=( CHOICES ),
                        widget=forms.CheckboxSelectMultiple,)
Run Code Online (Sandbox Code Playgroud)

python django django-forms

4
推荐指数
2
解决办法
2261
查看次数

C++在子类中调用虚方法

我有以下课程:

class A {
protected:
     A *inner;
public:
    ....
    virtual void doSomething() = 0;
    ....
}

class B: public A {
   ...
   void doSomething() {
       if(inner != NULL)
           inner->doSomething();
   }
   ...
}
Run Code Online (Sandbox Code Playgroud)

当我使用时,inner->doSomething()我得到了分段错误.我怎么办才能打电话inner->doSomething()给B班?

提前致谢.

c++ virtual-functions

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

349
推荐指数
5
解决办法
43万
查看次数

在IE中设置document.domain后读取window.location(6)

我有一个页面,其中www.example.com/index.html上的脚本在弹出窗口中打开home.example.com/foo.html.当用户关闭弹出窗口时,我想通过调用它上面的Javascript函数来通知开启者页面(这对DOM做了一些事情).我用unbeforeunload这样的:

    // In index.html on www.example.com:
    window.fn = function () { /* Perform stuff after foo.html has closed */ }

    // In foo.html on home.example.com:
    window.onbeforeunload = function () {
        if (window.opener && window.opener.fn)
            window.opener.fn();
    };
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为网页位于不同的域上.我可以设置document.domain属性来克服这个问题:

document.domain = "example.com";
Run Code Online (Sandbox Code Playgroud)

不幸的是,这与我在foo.html端(Apache Wicket)上使用的Web应用程序框架不兼容,因为它包含一个执行如下操作的脚本:

var src = (window.location.protocol == 'https:') ? something : other;
Run Code Online (Sandbox Code Playgroud)

显然,在IE6 *中,当您设置文档域时,该location对象变为只写,因此尝试读取window.location.protocol会抛出"拒绝访问".

所以,我的问题是:如何在允许我的脚本读取location对象内容的同时允许跨域Javascript函数调用?

  • 我无法通过服务器.(我想要调用的函数执行的工作并不是真的那样.)
  • window.location.protocol在设置之前无法读取属性document.domain,然后在条件赋值中使用该值; 这样做需要我重建Web框架库 - 而不是我想做的事情. …

javascript cross-domain internet-explorer-6

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

为什么invokeAll()不会返回?

我大致有这个代码:

ExecutorService threader = Executors.newFixedThreadPool(queue.size());
List futures = threader.invokeAll(queue);
Run Code Online (Sandbox Code Playgroud)

我调试了这个,并且在队列中的所有线程都完成之前,invokeAll似乎没有返回.发生这种情况的任何原因.

java concurrency

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

实现IEquatable <T>,其中T是一个接口

我有一个域模型,由以下代表.

IMyInterface

ClassA : IMyInterface

ClassB : IMyInterface
Run Code Online (Sandbox Code Playgroud)

我想要的是以这样的方式实现IEquatable,我可以编写类似的代码.

if(dynamicallyCreatedInstanceOfClassA == dynamicallyCreatedinstanceOfClassB)
{
  // Do something relevant
}
Run Code Online (Sandbox Code Playgroud)

我的第一个倾向是让IMyInterface实现IEquatable,但当然我实际上无法在IMyInterface中实现.我必须在ClassA和ClassB中这样做.这个解决方案让我觉得错误的是,ClassA和ClassB中IEquatable的实现将完全相同,行相同.有一种优雅的方式来实现这一目标吗?当ClassC出现时,我不想复制和过去50行重复的IEquatable代码.

我考虑使用抽象基类而不是接口,但在这种情况下,IMyInterface实际上只描述了类将执行的操作而不是类.ClassA和ClassB不共享许多相似之处,除非它们都可以执行IMyInterface合同中的操作.

任何见解都有帮助,谢谢你的时间.

c# class-design .net-3.5

7
推荐指数
2
解决办法
1767
查看次数