草庐IT

业务异常

全部标签

c# - 从 json 转换为 List<object> 导致异常

所以这是我的问题,我有一个API设置,它以JSON字符串格式从Azure存储表返回结果:[{"CustID":"f3b6.....0768bec","Title":"Timesheet","CalendarID":"AAMkADE5ZDViNmIyLWU3N2.....pVolcdmAABY3IuJAAA=","PartitionKey":"Project","RowKey":"94a6.....29a4f34","Timestamp":"2018-09-02T11:24:57.1838388+03:00","ETag":"W/\"datetime'2018-09-02T08%3A24

c# - 配置 .NET WCF UTF-8 反序列化器以修改/丢弃非最短格式字符而不是抛出异常?

我们有一个通过WCF托管的SOAP网络服务。我们偶尔从其中接收数据的客户端之一使用非最短格式对UTF-8进行编码(有关这方面的一些信息,请参阅http://www.unicode.org/versions/corrigendum1.html)。修改客户端并不容易,因为我们的代码没有对这些非最短形式的字符进行编码。相反,我们希望编辑WCF服务以丢弃这些字符,将它们替换为其他占位符字符,甚至接受非最短形式的字符。对于我们的用例,这些中的任何一个都是可以接受的,尽管前一个选项是首选,因为它们减少了任何安全风险。查看堆栈跟踪:System.ServiceModel.Dispatcher.Net

c# - 尝试加载格式不正确的程序异常会随着 VS 安装而消失

我设计了一个C#Windows应用程序,它也在内部调用一些函数[通过DllImport()从C++DLL导入]我的C++代码在Win32平台中构建为.DLL,而我的C#构建为“任何CPU”平台。当我在我的测试机器上运行.EXE(C#)时,我遇到了一个错误anattemptwasmadetoloadaprogramwithanincorrectformatexceptionfromhresult0x8007000B但是,如果我在我的机器上安装VSS2010然后运行​​EXE,则不会遇到此错误。1)此错误的原因?2)为什么安装VSS时没有观察到错误?我使用Win7操作系统(64位)在Any

c# - 在 ContinueWith 中观察任务异常

有多种方法可以观察任务中抛出的异常。其中之一在ContinueWith和OnlyOnFaulted中:vartask=Task.Factory.StartNew(()=>{//Throwsanexception//(possiblyfromwithinanothertaskspawnedfromwithinthistask)});varfailureTask=task.ContinueWith((t)=>{//Flattenandloop(sincetherecouldhavebeenmultipletasks)foreach(varexint.Exception.Flatten().

c# - 如何在没有 "process has exited"异常的情况下终止进程?

我使用Process.Kill()来终止进程。像这样:if(!process.WaitForExit(5000)){process.Kill();}有时进程会在两行之间退出,所以控制会进入if然后Kill会产生异常:System.InvalidOperationExceptionCannotprocessrequestbecausetheprocess(ProcessIdHere)hasexited.atSystem.Diagnostics.Process.GetProcessHandle(Int32access,BooleanthrowIfExited)atSystem.Diagno

c# - 加载程序集 Xamarin.Android.Support.v4 时出现异常

我正在使用Xamarin.Forms开发visualstudio,我收到以下错误:Exceptionwhileloadingassemblies:System.IO.FileNotFoundException:Couldnotloadassembly'Xamarin.Android.Support.v4,Version=1.0.0.0,Culture=neutral,PublicKeyToken='.Perhapsitdoesn'texistintheMonoforAndroidprofile?Filename:'Xamarin.Android.Support.v4.dll'atXam

c# - 在代码中使用 '"using"关键字时,我应该在哪里捕获异常?

哪个在结构上更好?classProgram{staticvoidMain(string[]args){try{using(Foof=newFoo()){//somecommandsthatpotentiallyproduceexceptions.}}catch(Exceptionex){Console.WriteLine(ex.Message);}}}或者...classProgram{staticvoidMain(string[]args){using(Foof=newFoo()){try{//somecommandsthatpotentiallyproduceexceptions.

c# - 防止来自 3rd 方组件的异常使整个应用程序崩溃

我正在编写一个依赖于某些第三方DLL的多线程应用程序。我的问题是,当使用第三方库中的对象时,如果它在运行时引发异常,我无法捕获它并且它会冒泡并杀死整个应用程序。我有许多不同的线程,每个线程都使用来自第三方库的自己的对象,我需要使用该对象副本的线程能够捕获和处理异常。根据我所读到的内容,似乎第3方库实际上正在创建自己的线程并允许未捕获的异常。.NET2.0+行为允许这些异常终止整个应用程序。我知道AppDomain.CurrentDomain.UnhandledException,但这不允许您阻止应用程序关闭。作为引用,我正在.NET4.0中编写一个控制台应用程序。有没有人有任何解决方案

c# - 尝试从 WinJS 读取 C# WinRT 组件中的空字符串时出现异常

我有以下场景:C#中的数据库编译为Windows运行时组件。它的一个类是这样的:publicsealedclassMyData{stringTheGoods{get;privateset;}}UI在WinJS中,我有以下内容:varb=dataInstance.theGoods;问题是我得到一个异常并且属性中包含以下内容:System.ArgumentNullException异常在System.StubHelpers.HStringMarshaler.ConvertToNative(字符串管理)查看HStringMarshaler.ConvertToNative的实现,如果字符串为n

c# - 如何在托管 C++ 中捕获非托管 C++ 异常

我正在一个大型非托管C++库和一个大型C#库上开发一个瘦托管C++包装器。我需要捕获源自大型非托管C++库的错误,并将它们作为Clr异常重新抛出。非托管库抛出以下类的实例:Error::Error(conststd::string&file,longline,conststd::string&function,conststd::string&message){message_=boost::shared_ptr(newstd::string(format(file,line,function,message)));}constchar*Error::what()constthrow(