问题列表 - 第7491页

停止程序执行直到线程完成

我有一个控制台应用程序,在4个theads中执行一项长任务.我希望我的程序等到线程完成,然后完成程序执行.有没有办法阻止程序执行,让线程完成他们的工作?

c# concurrency multithreading

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

如何在Windows XP中枚举/列出所有已安装的应用程序?

当我说"已安装的应用程序"时,我基本上是指在[控制面板] - > [添加/删除程序]中可见的任何应用程序.

我更喜欢用Python做,但C或C++也没关系.

c++ python winapi enumeration

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

是否有任何用于理解代码的源代码管理合并工具?

我最近一直在研究大型代码库,重构并通常改进设计以增加覆盖范围.此外,在相当多的文件中,我删除了多余的使用语句,移动了方法,以便类似的功能靠得很近,添加了区域等,但实际上没有改变文件中代码的功能.

与此同时,在团队的其他地方,其他开发人员正在修复错误并改变代码行.显然,当涉及到合并时,这可能是一个问题,因为行号不再匹配,方法可能已经移动.

现在,我理解一般规则,在源控制环境中移动方法可能是危险的,我们认为这个好处超过了成本.然而,我不明白为什么它应该是这样的.

假设我的初始文件是一个简单的计算器:

public class Calculator
{
    public int Subtract(int a, int b)
    {
        return a + b;
    }

    public int Add(int a, int b)
    {
        return a + b;
    }
}
Run Code Online (Sandbox Code Playgroud)

我决定我希望这些方法按字母顺序排列:

public class Calculator
{
    public int Add(int a, int b)
    {
        return a + b;
    }

    public int Subtract(int a, int b)
    {
        return a + b;
    }        
}
Run Code Online (Sandbox Code Playgroud)

而另一位开发人员修复了减法方法中的错误

public class Calculator
{
    public int Subtract(int a, int b)
    {
        return a - b;
    } …
Run Code Online (Sandbox Code Playgroud)

version-control merge

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

无法在嵌入UpdatePanel的WebControl中获取ScriptManager.RegisterStartupScript

我有我认为应该是一个相当简单的问题,但对于我的生活,我看不出我的问题.问题与ScriptManager.RegisterStartupScript有关,这是我之前多次使用过的.

我的场景是我有一个插入页面的自定义Web控件.控件(以及一个或两个其他)嵌套在UpdatePanel中.它们被插入到PlaceHolder的页面上:

<asp:UpdatePanel ID="pnlAjax" runat="server">
  <ContentTemplate>
    <asp:PlaceHolder ID="placeholder" runat="server">
    </asp:PlaceHolder>
    ...

protected override void OnInit(EventArgs e){
  placeholder.Controls.Add(Factory.CreateControl());
  base.OnInit(e);
}
Run Code Online (Sandbox Code Playgroud)

这是页面上唯一的更新面板.

控件需要运行一些初始的javascript才能正常工作.控制电话:

ScriptManager.RegisterStartupScript(this, GetType(), 
                                    Guid.NewGuid().ToString(), script, true);
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

ScriptManager.RegisterStartupScript(Page, Page.GetType(), 
                                    Guid.NewGuid().ToString(), script, true);
Run Code Online (Sandbox Code Playgroud)

问题是脚本在首次显示页面时正确运行,但在部分回发后不会重新运行.我尝试过以下方法:

  1. 从CreateChildControls调用RegisterStartupScript
  2. 从OnLoad/OnPreRender调用RegisterStartupScript
  3. 对前两个参数使用不同的参数组合(在上面的例子中,Control是Page和Type是GetType(),但我尝试过使用控件本身等).
  4. 我尝试过使用持久性和新的ID(不是我认为这应该会产生重大影响).
  5. 我使用了一些断点,因此验证了正确调用了寄存器行.

我唯一没有尝试的是使用UpdatePanel本身作为控件和类型,因为我不相信控件应该知道更新面板(并且在任何情况下似乎都没有获得更新的好方法面板?).

任何人都可以看到我在上面做错了什么吗?

谢谢 :)


好吧,回答上面的查询 - 它看起来好像占位符以某种方式混淆了ScriptManager.RegisterStartupScript.

当我将控件拉出占位符并将其直接编码到页面上时,Register脚本正常工作(我也将控件本身用作参数).


ScriptManager.RegisterStartupScript(this, GetType(), Guid.NewGuid().ToString(), script, true);

任何人都可以解释为什么注入控件到PlaceHolder会阻止ScriptManager正确注册脚本?我猜这可能与动态控件的生命周期有关,但如果有一个正确的上述过程,我会欣赏(据我所知).

c# asp.net ajax updatepanel scriptmanager

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

什么可能导致ASP.NET在调试中跳过行?

我之前从未遇到过这个问题,但我最近重新安装了我的计算机,并且Visual Studio在ASP.NET站点的调试中表现不佳.

我将visual studio 2008附加到w3wp进程来调试网站.当我使用F10逐行调试方法时,有时visual studio会决定它会持续到遇到断点......这几乎就像我按F5让它继续,但是我按下F10.例如,如果方法调用被多次调用并且在开头有一个断点,而我在方法内逐行调试,有时执行将在开始时继续到断点,没有明显的原因所以我失去了所有的调试...

以前有人有这个问题吗?

谢谢,

asp.net debugging visual-studio-2008 visual-studio

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

通过浏览器调用WCF服务方法

我有一个使用基本http绑定的WCF服务.如何通过浏览器调用其操作/方法?

wcf web-services

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

为什么我们的查询卡在MySql中的"写入网络"状态?

我们有很多疑问

select * from tbl_message
Run Code Online (Sandbox Code Playgroud)

陷入"写入网络"的状态.该表有98k行.

事情是......我们甚至没有从我们的应用程序执行任何查询,所以我想问题是:

  • 什么可能生成查询?
  • ......为什么它会陷入"写入网络"的状态

我觉得这个问题很愚蠢,但我99,99%确定我们的应用程序没有像我们的数据库那样执行查询......但是我们使用WHERE语句对该表执行了几个查询:

 SELECT Count(*) as StrCount FROM tbl_message WHERE m_to=1960412 AND m_restid=948

 SELECT Count(m_id) AS NrUnreadMail FROM tbl_message WHERE m_to=2019422 AND m_restid=440 AND m_read=1

 SELECT * FROM tbl_message WHERE m_to=2036390 AND m_restid=994 ORDER BY m_id DESC
Run Code Online (Sandbox Code Playgroud)

我已经多次搜索过我们的应用程序,select * from tbl_message但没有找到任何东西......但是我们的mysql服务器上的查询日志仍然充满了Select * from tbl_message查询

mysql

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

是否有一个声明将元素T添加到IEnumerable <T>

例如:

string element = 'a';
IEnumerable<string> list = new List<string>{ 'b', 'c', 'd' };

IEnumerable<string> singleList = ???; //singleList yields 'a', 'b', 'c', 'd' 
Run Code Online (Sandbox Code Playgroud)

c# linq

22
推荐指数
4
解决办法
7601
查看次数

在C#中创建一个空文件

在C#/ .NET中创建空文件的最简单/规范方法是什么?

到目前为止我能找到的最简单的方法是:

System.IO.File.WriteAllLines(filename, new string[0]);
Run Code Online (Sandbox Code Playgroud)

.net c#

177
推荐指数
4
解决办法
14万
查看次数

Mono对.Net框架开发人员的限制

我想从.Net切换到Mono(加上Visual Studio到Mono中的任何IDE).这真的很难吗?

我将面临哪些问题?

谢谢

c# mono visual-studio-2008

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