小编wma*_*ard的帖子

如何使用反射或替代方法以编程方式创建函数调用?

我有点像反射的新手.我希望有可能做我想做的事情.我一直在通过ProjectEuler学习语言,我有一个名为Problem的基类.每个PE问题都是一个单独的类,即Problem16.要运行我的计算,我使用以下代码:

using System;
using Euler.Problems;
using Euler.Library;

namespace Euler
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Problem prob = new Problem27();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我现在已经完成了50个问题,我想创建一个循环来运行它们.我的基类问题有一个方法,它在文本文件中附加问题编号,答案和在每个类的默认构造函数中调用的执行时间.我可以手动更改所有50的函数调用,但是当我继续完成问题时,这将最终成为很多工作.

我宁愿以编程方式来做.我希望这个伪代码成为现实:

for (int i = 1; i <= 50; i++)
{
    string statement = "Problem prob = new Problem" + i + "();";
    // Execute statement
}
Run Code Online (Sandbox Code Playgroud)

c# reflection

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

如何以编程方式将事件处理程序添加到.NET按钮?

我正在尝试使用我在开发Web应用程序时可以考虑的最强大的OOP,但是在使用代码创建事件处理程序时,我遇到了问题.我确信这是一个相当简单的解决方案,我不断放弃,但我不知道下一步该尝试什么.下面是我一直在玩的一些测试代码,只是想按下按钮去做一些事情.

(想象一下,"int i"这一行有一个断点)

    Button b = new Button();
    b.Text = "Do Something";
    b.Attributes.Add("runat", "server");
    b.Attributes.Add("OnClick", "click");
    form1.Controls.Add(b);

    private void click(object sender, EventArgs e)
    {
        int i;
    }
Run Code Online (Sandbox Code Playgroud)

由于这是我的Page_Load创建的一个新按钮,我不能只是对XHTML进行硬编码.调试永远不会到达我的断点.CheckBoxes也没有取得任何成功.

.net c# asp.net event-handling

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

来自C#/ ASP.NET的缓慢,大型SQL查询

可能重复:
如何在c#中有效地从SQL datareader写入文件?

我目前正在尝试创建一个使用只读访问权限的Web应用程序,以允许用户从我们的数据库下载大文件.有问题的表中有400,000条记录,导出时会生成50 MB的.csv文件.

在SQL服务器上运行语句"SELECT*FROM [table]"需要大约7秒,而从我的Web应用程序(托管在不同服务器上)执行此操作大约需要33秒.这是将所有数据读入System.Data.SqlClient.SqlDataReader对象.

我的问题是我无法将我的SqlDataReader转换为.csv文件.将SqlDataReader的每一行转换为字符串并逐行将该字符串输出到文件大约需要2个小时,这是不可接受的.下面是我用来在Web应用程序的服务器上创建文件的代码:

    while (rdr.Read())
    {
        string lineout = "";
        for (int index = 0; index < rdr.FieldCount; index++)
            lineout += rdr[index].ToString().Replace(',', ' ') + ',';
        write(lineout, filename); //uses StreamWriter.WriteLine()
    }
Run Code Online (Sandbox Code Playgroud)

一定有更好的方法.我环顾四周,看到了很多建议,基本上建议你做上面的事情来创建一个文件.这适用于较小的表,但不是我们每天使用的两个非常大的表.任何人都可以给我一个正确的方向吗?

c# sql sqldatareader

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

XOR运算符无法在C++中正确评估

我正在用C++从头开始构建一个BigInt类,但有些事情让我感到疯狂:我的XOR工作不正常,我不明白为什么.我希望有人可以启发我.以下是一个最小的工作示例:

class BigInt
{
    private:
        bool pos;
        int size;  // Number of binary digits to use
        short compare(BigInt input);
    public:
        BigInt(long long input, int inSize) { pos = true; size = inSize; }
};

short BigInt::compare(BigInt input)
{
    // Partial compare function for minimal working example
    // Return:
    //         1: (*this) > input
    //         0: (*this) == input
    //        -1: (*this) < input

    string a = (*this).toDecimal(), b = input.toDecimal();
    bool c = (*this).size > input.size, d = (*this).pos ^ …
Run Code Online (Sandbox Code Playgroud)

c++ xor

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

标签 统计

c# ×3

.net ×1

asp.net ×1

c++ ×1

event-handling ×1

reflection ×1

sql ×1

sqldatareader ×1

xor ×1