小编Chr*_*low的帖子

跨线程异常 - 仅限环境

控件只能由创建它的线程访问 - 我知道这一点.

  1. 我有一个DataGridView与一个基于BindingList <>的DataSource.
  2. 我有一个工作线程(非GUI)运行一些奇特的计算/比较/等,然后添加/编辑一个对象到/ BindingList <>.
  3. 在计时器上,GUI线程针对BindingList <>刷新自身.

这段代码完美无瑕 - 只要我没有在环境中运行.在BindingList <>上调用.Add()方法的环境中,我得到了这个方便的小错误:

An Exception has occurred
EXCEPTION : Cross-thread operation not valid: Control '' accessed from a thread other than the thread it was created on.
IN METHOD : get_Handle
AT LINE   : 0
CLASS     : System.Windows.Forms.Control
Run Code Online (Sandbox Code Playgroud)

注意被违反的控件的名称是空白的 ...我认为如果问题在于更新BindingList <>,那么如果我在环境中运行则无关紧要.尽管如此,这就是我所看到的. 此外,即使抛出异常,.Add()也能成功完成!!

显然,它在我的生产环境中并不是一件大事(但是?),因为它只发生在Studio中; 和是的,我可以调用GUI线程来执行的添加,或储存在GUI线程一个地方增加了以后检索它们......我不是在寻找一个解决,但更使我感兴趣的答案这个问题:

为什么错误只出现在工作室?

c# multithreading marshalling winforms

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

ASP.NET MVC3调试Application_Start

我正在尝试将我的第一个MVC3应用程序部署到运行IIS-7.5的服务器上.我已经启动并运行了,但是我的调试方法遇到了一些问题.我使用专有的调试构造,当我在本地运行应用程序(使用内置的"IIS Express"模块和Visual Studio)时工作正常 - 但是当我部署到服务器时,我甚至没有创建我的调试文件,印刷得少得多.

调试文件是在Application_Start事件中创建的,因此我在Application_Start事件中添加了一个事件日志标记,并在本地和服务器上运行应用程序,以查看事件是否被触发.我在本地的事件日志已按预期标记,但服务器上的事件日志没有任何新标记.这里发生了什么?

protected void Application_Start()
  {
     AreaRegistration.RegisterAllAreas();

//This is just some code that calls to another module I wrote to easily stamp to the Event logs - it works, trust me
     EventLogging.Initialize();
     EventLogging.WriteEventLog("Application Start Called Successfully");
  }
Run Code Online (Sandbox Code Playgroud)

c# asp.net iis-7.5 asp.net-mvc-3

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

javax.el.E​​LException:标识符[return]不是有效的Java标识符

我有一个页面网址,看起来像:

http://mydomain.com/nodes/32/article/new?return=view

安装tomcat 7后,在尝试访问它时,我遇到了这个异常:

/nodes/${param.id}/article/new?return=${param.return}
contains invalid expression(s): javax.el.ELException: The identifier [return] is not a valid Java identifier as required by section 1.19 of the EL specification (Identifier ::= Java language identifier). This check can be disabled by setting the system property org.apache.el.parser.SKIP_IDENTIFIER_CHECK to true.
Run Code Online (Sandbox Code Playgroud)

任何想法为什么我得到它?要解决它,我应该只在tomcat中更改此属性吗?

java-ee tomcat7

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

Javascript数组扩展方法在for循环中迭代

我已经为数组对象创建了一个JavaScript扩展,如下所示:

Array.prototype.where = function (lamda) {
var results = [];

for (var i in this) {
    if (lamda(this[i])) {
           results.push(this[i]);
        }
    }

    return results;
}
Run Code Online (Sandbox Code Playgroud)

当我使用for循环迭代数组时,如:

var myArray = [1,2,3,4];

for(var i in myArray){
   alert(myArray[i]);
}
Run Code Online (Sandbox Code Playgroud)

...我的扩展也被列举了.

有任何想法吗?

javascript arrays iteration prototype-programming

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

如何使用实体框架自动包含所有基础导航属性

场景:我想在数据库中添加一个具有导航属性的实体,实体具有导航属性......等等.基本上,数据库中的表是相互连接的 - 所有这些表.

我使用EF4.3和上下文/请求模式,所以我不想启用Lazy加载; 它只需要花费太多时间来加载我需要的实体.到目前为止,我已经知道除了使用这样的include方法之外别无他法.

 context.Set<TEntity>().include("navproperty1").include("navproperty1.navproperty1.1")... and so on.
Run Code Online (Sandbox Code Playgroud)

这样可维护性会很糟糕,而且它是很多代码,但是如果我不想手动为每个实体类型编写所有包含,还有其他方法吗?

c# entity-framework lazy-loading navigation-properties

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

如何将gmail消息标记为未读(看不见)MailSystem.NET

我搜索了很多如何从gmail阅读电子邮件,然后将其标记为未读(看不见),现在我发现我想与大家分享.

.net c# imap mailsystem.net

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

运行ProcDump时出错

这里有一个ProcDump教程:http://drdobbs.com/blogs/parallel/229300328

我有一个崩溃的应用程序,所以我想看看ProcDump是否可以提供帮助.该应用程序是C:\Program Files\MyCompanyName\thebadapp.exe这样我将ProdCump.exe复制到C:\并打开它像这样:

C:\procdump -e C:\Program Files\MyCompanyName\thebadapp.exe
Run Code Online (Sandbox Code Playgroud)

......但是Prodcump正在回归:

目录C:\ Files\MyCompanyName \不存在

我做错了什么?

谢谢.

c# debugging procdump

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

使用跨域创建cookie

我正在研究cookies.我可以很容易地创建cookie.要创建cookie,我使用此代码:

HttpCookie aCookie = new HttpCookie("Cookie name");
aCookie.Value = "Value";
Response.Cookies.Add(aCookie); 
Run Code Online (Sandbox Code Playgroud)

这段代码对我来说很好,它给了我localhost作为主机.但是,当我尝试在此处添加域名时问题就出现了:

HttpCookie aCookie = new HttpCookie("Cookie name");
aCookie.Value = "Value";
aCookie.Domain = "192.168.0.11";
Response.Cookies.Add(aCookie); 
Run Code Online (Sandbox Code Playgroud)

现在没有生成cookie.有什么建议?

c# asp.net cookies

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

我们如何在类中使用$ _POST变量

我只是在学习PHP课程,所以我正在搞乱它.我只是尝试从用户获取值并使用类显示它.但是,当我尝试$_POST在类中使用变量时,它显示错误.

这是代码:

<form action="classess.php" method="POST" >
<b>Enter the rate : </b>
<input type="text" name="price" />
<input name="submit" type="submit" value="Click" />
</form>
<?php

class rating
{
  public $rate = $_POST['price'];
  public function Display()
  {
    echo $this -> rate;
  }
}

$alex = new rating;
$alex ->Display();
?>
Run Code Online (Sandbox Code Playgroud)

php

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

检索已注册提供商的ETW提供商清单

我想为Provider"Microsoft-Windows-HttpService"检索清单xml文件.

我正在使用Microsoft.Diagnostics.Tracing库来使用我的.Net应用程序中的ETW事件.

该库有一些内置的解析器,如KernelTraceEventParser,ClrTraceEventParser.但它没有解析器Http Service.我正在尝试为此创建新的解析器.

我尝试下面的命令来生成清单

perfView /onlyProviders=*Microsoft-Windows-HttpService collect 
Run Code Online (Sandbox Code Playgroud)

从生成的.zip文件,运行以下命令生成清单.

perfView /noGui userCommand DumpEventSourceManifests PerfViewData.etl.zip 
Run Code Online (Sandbox Code Playgroud)

现在使用TraceParserGen生成CSharp代码

TraceParserGen  ManifestFileName
Run Code Online (Sandbox Code Playgroud)

但这给了我错误:读取清单文件Microsoft-Windows-HttpService.manifest.xml错误:错误Microsoft-Windows-HttpService.manifest.xml(42):未定义Id SrvdFrmCache

我也尝试为少数事件创建手动类,它会读取事件但无法读取有效负载.

请告诉我如何为此提供程序生成正确的清单并生成解析器.

c# etw

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