草庐IT

Markdown_use

全部标签

c# - 带有 Attach() 的 LINQ To SQL 异常 : Cannot add an entity with a key that is already in use

考虑这个典型的断开连接的场景:使用LINQToSQL从SQLServer加载客户对象用户编辑实体,表示层发回修改后的实体。数据层,使用L2S,必须将更改发送到SQLServer考虑这个LINQToSQL查询,其目的是获取客户实体。CustcustOrig=db.Custs.SingleOrDefault(o=>o.ID==c.ID);//gettheoriginaldb.Custs.Attach(c,custOrig);//wedon'thaveaTimeStamp=Truepropertydb.SubmitChanges();DuplicateKeyException:Cannota

c# - 如何修复 "The requested resource is in use. (Exception from HRESULT: 0x800700AA)"

我该如何解决这个错误?"Therequestedresourceisinuse.(ExceptionfromHRESULT:0x800700AA)".这在使用C#.NET中的WebBrowser控件导航到其他网站时出现。为什么? 最佳答案 如果当前正在处理导航操作,或者控件中的任何阻止对话框当前处于打开状态(包括上下文菜单、Javascript警报、NTLM登录对话框等),则WebBrowser控件被视为“正在使用”。您可以使用WebBrowser.IsBusy属性来检测这些状态。如果由于当前导航操作不完整,您可以尝试停止当前导航(

c# - Entity Framework : The context is being used in Code First mode with code that was generated from an EDMX file

我正在使用EF6数据库优先方法开发一个WPF应用程序,我的解决方案中有一个项目,如果我运行我的项目,这个错误总是出现。上下文在代码优先模式下使用,代码是从数据库优先或模型优先开发的EDMX文件生成的。这将无法正常工作。要解决此问题,请不要删除引发此异常的代码行。如果您希望使用数据库优先或模型优先,请确保EntityFramework连接字符串包含在启动项目的app.config或web.config中。如果您要创建自己的DbConnection,请确保它是一个EntityConnection而不是其他类型的DbConnection,并且您将它传递给采用DbConnection的基本Db

c# - 串口通信 : polling serial port vs using serial port DataReceived event

我只是在回顾我在CF2.0上用C#编写的与串行端口通信的一些代码。我没有使用DataReceived事件,因为它不可靠。MSDNstatesthat:TheDataReceivedeventisnotgauranteedtoberaisedforeverybytereceived.UsetheBytesToReadpropertytodeterminehowmuchdataislefttobereadinthebuffer.我用read()轮询端口,并有一个委托(delegate)在读取数据时处理数据。我还在某处读到“轮询不好”(没有给出解释)。知道轮询为什么不好吗?除了通常的线程警告

c# - 类似于 "using"的东西,它会创建一个对象并在完成后调用它的方法,但让我在两者之间做我想做的事

我正在使用Lidgren,对于我发出的每一种新消息,我最终都会编写相同类型的代码。我正在创建NetOutgoingMessage的实例,对其运行各种赋值调用,然后在完成后发送它。创建和发送是一样的,所以我想写一个包装器来为我做这件事,但它是一个sealed类而且它不是IDisposable。我正在做的是这样的:NetOutgoingMessageom=server.CreateMessage();om.Write(messageType);om.Write(data1);om.Write(data2);server.SendMessage(om,server.Connections,N

c# - 如果没有通过 using block 实例化实现 IDisposable 的类是否有方法抛出异常?

我发现了一些有潜在危险的类,如果它们不能被实例化,那么它们的危险性会小得多,除非它们在using语句中被实例化。我想知道是否有办法强制类只以这种方式实例化。(我知道IL会编译出什么,这就是为什么我不太确定这是否可能)干杯,菲尔。 最佳答案 没有办法强制执行它,但您可以构建一个customCodeAnalysisrule标记它。 关于c#-如果没有通过usingblock实例化实现IDisposable的类是否有方法抛出异常?,我们在StackOverflow上找到一个类似的问题:

c# - 即使在 using block 中抛出异常,资源也会被释放吗?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:DoesDisposemethodstillgetcalledwhenExceptionisthrowninsideofUsingstatment?访问数据库时,我有很多usingblock。我想知道-如果必须在usingblock中抛出异常,即使未到达block的末尾,是否仍会处理必要的资源?或者我需要自己在catchblock中手动关闭它们吗?

c# - 对于每个(): Why can't use break/continue inside

既然ForEach()方法循环遍历所有列表成员,为什么我不能使用break/continue子句,而我可以在普通的foreach循环中使用它们lstTemp.ForEach(i=>{if(i==3)break;//dosth});错误:"Noenclosingloopoutofwhichtobreakorcontinue" 最佳答案 因为ForEach是一种方法而不是常规的foreach循环。ForEach方法用于简单任务,如果您需要中断或继续,只需使用常规foreach循环遍历lstTemp。通常,ForEach是这样实现的:pu

c# : Why is a cast needed from an Enum to an INT when used in a switch statement? ,枚举是整数

谁能告诉我为什么我需要从我的枚举中转换为Intswitch(Convert.ToInt32(uxView.SelectedValue)){case(int)ViewBy.Client:如果我删除强制转换(int),它会失败并提示我必须使用强制转换。这是我的枚举,枚举是整数....有人知道吗?publicenumViewBy{Client,Customer} 最佳答案 在C#中,enum不仅仅是数字。相反,它们是与类型相关联的数字或在上下文中具有名称的数字。要避免在case语句中进行强制转换,您可以在switch中进行强制转换:swi

c# - 解释为什么 "using"在服务中不起作用?

所以我在这个问题上卡了一个星期左右。我试图运行一个项目来接收TCP连接并启动SignalRHub作为服务。两者都可以完美地将项目作为.exe文件运行。TCP部分可以完美运行,但我在SignalR端遇到了问题。原因最终是using语句。之前using(WebApp.Start(url)){Console.ForegroundColor=ConsoleColor.Green;Console.WriteLine("Serverrunningon{0}",url);//wasurlConsole.WriteLine("ID\tMessage");Console.ReadLine();}之后We