问题列表 - 第7022页

通过反射获取mscorlib 2.0.5.0(又名Silverlight mscorlib)中的类型?

我正在尝试将Silverlight支持添加到我最喜欢的编程语言Nemerle中.

Nemerle,在编译过程中,主要通过两个步骤通过反射加载所有类型

1-)使用Assembly.LoadFrom加载程序集2-)使用Assembly.GetTypes()来获取类型

然后在编译结束时,它使用Reflection.Emit发出已解析的类型.

此过程适用于所有程序集,包括除Silverlight的mscorlib之外的Silverlight程序集.

在c#中,这失败了:

 var a = System.Reflection.Assembly.LoadFrom(@"c:\mscorlib.dll");
Run Code Online (Sandbox Code Playgroud)

但这传递了:

var a = System.Reflection.Assembly.ReflectionOnlyLoadFrom(@"c:\mscorlib.dll"); 
Run Code Online (Sandbox Code Playgroud)

Bu在后者中,a.GetTypes()抛出一个异常,说System.Object的父节点不存在.

有出路吗 ?

silverlight reflection.emit nemerle mscorlib assembly.reflectiononly

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

浏览器兼容性测试

我如何进行浏览器兼容性测试?

是否有任何特定的方式或清单,我可以通过它确认浏览器IE 6/7/8上的兼容性测试完成.

让我将我的查询特别扩展到一个应用程序:

让我们假设一个Web应用程序在IE6中进行测试(约5000个测试用例)

现在我还需要检查IE7和IE8中的应用程序兼容性.

我该怎么做?因为我无法在所有浏览器中执行所有5000个测试用例

我需要确切知道在IE7和IE8浏览器中测试时可能出现的问题.

测试浏览器中应用程序兼容性的基准是什么?

testing comparison cross-browser

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

14
推荐指数
2
解决办法
4281
查看次数

如何从Java中的超类的上下文中检索最低子类的名称?

合理的

我想在几个超类上有更详细的日志调试/日志记录输出,因此子类名称实际上不会影响实时性能,也不会影响应用程序逻辑.我也认为通常这样做是相当糟糕的设计,但是我真的希望在开发运行期间记录这些信息.

假设我有一个如下所示的简单类结构,如何将子类的名称拉入超类而不必显式传递引用?

public abstract AbstractClass {
    private Logger logger = LoggerFactory.getLogger(getClass());

    public AbstractClass() {}

    public void execute(ContextObject context) {
        if (logger.debuggingEnabled()) {
            String invokingClassName = ""; // <-- how do I get this?
            logger.debug("Executing {}", invokingClassName);
        }
        // shared application logic is here...
    }
}

public MyClass extends AbstractClass {
    public MyClass() {}

    @Override
    public void execute(ContextObject context) {
        super.execute(context);
        // application logic...
    }
}
Run Code Online (Sandbox Code Playgroud)

我曾经使用过解析堆栈跟踪,我怀疑如果我想要这些信息,那就是我必须走的路线.有谁知道一个库会为我做这个或一个很好的代码片段?

java debugging stack-trace

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

为什么Sybase JDBC驱动程序"吃掉"异常?

我正在使用官方的Sybase JDBC驱动程序连接到数据库并通过创建CallableStatement调用存储过程,将参数绑定到它并在其上调用.execute().

但是,我发现即使存储过程失败,也不会抛出任何异常.我可以通过使用Wireshark嗅探到数据库的流量并观察返回的错误消息来验证故障是否传播回给我.

最后我发现使用.executeUpdate()而不是.execute()确实给了我例外,但是我还有两个问题:

  1. 为什么.execute()和.executeUpdate()表现不同?从接口的SUN文档看来,它们应该(几乎)做同样的事情......
  2. 在调用存储过程时,用.executeUpdate()替换.execute()是否总是合适的?存储过程是否必须符合某些特定要求才能使用.executeUpdate()进行调用?(例如,它必须有更新/删除/插入语句作为最后一步吗?)

更新:我已经尝试过jTDS,它的行为正确(如:在两种情况下都抛出SQLException - 使用.execute()和.executeUpdate()).但是,由于我无法控制的限制,切换驱动程序实际上是不可能的.

另外:我对此存储过程返回的结果不感兴趣,它是一个插入/更新类型过程.我只会被插入以查看(并且能够捕获/记录)它是否失败.我尝试过的另一件事是在.execute()之后从连接中获取警告,但它也没有包含任何内容.

java sybase jdbc sqlexception

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

XML模式检查错误

我使用以下架构来检查以下XML文件.我发现当People元素中有多个Information元素时,模式检查将失败.为什么以及如何解决它(我想让People元素能够嵌套多个信息项)?

XML Schema文件:

  <xs:element name="People">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Information">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Name" type="xs:string"/>
            </xs:sequence>
            <xs:attribute name="Id" type="xs:string"/>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
Run Code Online (Sandbox Code Playgroud)

XML文件(模式检查将失败):

  <People>
    <Information Id="1">
      <Name>John</Name>
    </Information>
    <Information Id="2">
      <Name>Mike</Name>
    </Information>
  </People>
Run Code Online (Sandbox Code Playgroud)

XML文件(模式检查会成功):

  <People>
    <Information Id="1">
      <Name>John</Name>
    </Information>
  </People>
Run Code Online (Sandbox Code Playgroud)

乔治,提前谢谢

xml schema

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

使用ASP.NET在加载时更改GridView中的值

我有一个GridView,它可以很容易地填充来自SQL数据库的数据.现在我想替换我的一列中的值,就像这样......

如果c04_oprogrs值为1,则在GridView中显示Take.

如果c04_oprogrs值为2,则在GridView中显示Available.

我必须更改哪些代码才能更改为我的代码以显示新值.

我的网格

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
                Height="281px" Width="940px" 
                Font-Size="X-Small" AllowPaging="True" 
                onpageindexchanging="GridView1_PageIndexChanging">
                <Columns>
                    <asp:BoundField DataField="c04_oprogrs" HeaderText="Order Progress" 
                        SortExpression="c04_oprogrs" />
                    <asp:BoundField DataField="c04_orderno" HeaderText="Order No." 
                        SortExpression="c04_orderno" />
                    <asp:BoundField DataField="c04_orddate" HeaderText="Date of Order" 
                        SortExpression="c04_orddate" DataFormatString="{0:d/MM/yyyy}" />
                    <asp:BoundField DataField="c04_ordval" HeaderText="Order Value" 
                        SortExpression="c04_ordval" DataFormatString="{0:R#,###,###.00}" />
                    <asp:BoundField DataField="c04_delval" HeaderText="Delivered Value" 
                        SortExpression="c04_delval" DataFormatString="{0:R#,###,###.00}" />
                    <asp:BoundField DataField="c04_invval" HeaderText="Invoice Value" 
                        SortExpression="c04_invval" DataFormatString="{0:R#,###,###.00}" />
                    <asp:BoundField DataField="c04_orddesc" HeaderText="Order Description" 
                        SortExpression="c04_orddesc" >
                        <ControlStyle Width="300px" />
                    </asp:BoundField>
                </Columns>
            </asp:GridView>
Run Code Online (Sandbox Code Playgroud)

我的页面加载

SqlConnection myConnection;
        DataSet dataSet = new DataSet(); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net gridview

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

unicode.org文件"UnicodeData.txt"的字段记录在哪里?

我找不到UnicodeData.txt文件的实际字段的文档.

数据可在此处获得.描述它的文档在这里可用,但它没有列出实际的字段编号和字段是什么(就像在3.0版本的文档中一样).

我搜索过这个网站,一定是错过了我眼前的东西,但我找不到它.

有人可以指出这些信息现在在哪里吗?

unicode

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

什么是PHP中动态mysqli bind_param参数的简单解决方案?

为了动态构建bind_param,我在其他SO帖子上找到了这个.

call_user_func_array(array(&$stmt, 'bindparams'), $array_of_params);
Run Code Online (Sandbox Code Playgroud)

有人可以用简单的英语为我打破这个吗?我特别迷失了,第一个参数是一个数组.

mysqli

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

在Delphi中,如何检查IInterface引用是否实现派生但未明确支持的接口?

如果我有以下接口和一个实现它们的类 -

IBase = Interface ['{82F1F81A-A408-448B-A194-DCED9A7E4FF7}']
End;

IDerived = Interface(IBase) ['{A0313EBE-C50D-4857-B324-8C0670C8252A}']
End;

TImplementation = Class(TInterfacedObject, IDerived)
End;
Run Code Online (Sandbox Code Playgroud)

以下代码打印'Bad!' -

Procedure Test;
Var
    A : IDerived;
Begin
    A := TImplementation.Create As IDerived;
    If Supports (A, IBase) Then
        WriteLn ('Good!')
    Else
        WriteLn ('Bad!');
End;
Run Code Online (Sandbox Code Playgroud)

这有点烦人但可以理解.支持无法转换为IBase,因为IBase不在TImplementation支持的GUID列表中.可以通过将声明更改为 - 来修复

TImplementation = Class(TInterfacedObject, IDerived, IBase)
Run Code Online (Sandbox Code Playgroud)

然而,即使没有这样做,我已经知道 A实现了IBase,因为A是IDerived,而IDerived是IBase.所以,如果我遗漏支票,我可以投A,一切都会好的 -

Procedure Test;
Var
    A : IDerived;
    B : IBase;
Begin
    A := TImplementation.Create As IDerived;
    B := IBase(A);
    //Can now successfully call any of B's methods …
Run Code Online (Sandbox Code Playgroud)

delphi winapi types interface delphi-2007

12
推荐指数
2
解决办法
4504
查看次数