草庐IT

be_false

全部标签

c# - MVC4 TDD - System.ArgumentNullException : Value cannot be null.

我是mvc4和TDD的新手。当我尝试运行这个测试时它失败了,我不知道为什么。我已经尝试了很多东西,我开始原地踏步。//GETapi/User/5[HttpGet]publicHttpResponseMessageGetUserById(intid){varuser=db.Users.Find(id);if(user==null){//returnRequest.CreateResponse(HttpStatusCode.NotFound);thrownewHttpResponseException(Request.CreateResponse(HttpStatusCode.NotFou

c# - MVC3 asp.net 错误 : Value cannot be null. 参数名称:下拉列表中的项目

在尝试发布数据时,我只在服务器中而不是在我的本地系统中得到转储。有一个页面向数据库提交了一些值。我还将页面中的下拉列表建模为强制性的。但是,当点击“创建”时,不会出现“丢失”之类的错误;它抛出一个垃圾场。转储跟踪:Valuecannotbenull.Parametername:itemsDescription:Anunhandledexceptionoccurredduringtheexecutionofthecurrentwebrequest.Pleasereviewthestacktraceformoreinformationabouttheerrorandwhereitorigi

c# - TcpClient.GetStream().DataAvailable 返回 false,但流有更多数据

因此,阻塞的Read()似乎可以在完成接收所有发送给它的数据之前返回。反过来,我们用一个循环包装Read(),该循环由相关流中的DataAvailable值控制。问题是您可以在此while循环中接收更多数据,但没有后台处理继续让系统知道这一点。我在网上找到的大多数解决方案都不适用于我。我最终做的是作为我循环的最后一步,我在从流中读取每个block后执行一个简单的Thread.Sleep(1)。这似乎让系统有时间更新,我没有得到准确的结果,但这似乎有点老套,而且对于解决方案来说有点“间接”。以下是我正在处理的情况的列表:IIS应用程序和独立应用程序之间的单个TCP连接,两者都是用C#编写

c# - 错误 (HttpWebRequest) : Bytes to be written to the stream exceed the Content-Length bytes size specified

我似乎无法弄清楚为什么我不断收到以下错误:BytestobewrittentothestreamexceedtheContent-Lengthbytessizespecified.在以下行:writeStream.Write(bytes,0,bytes.Length);这是一个Windows窗体项目。如果有人知道这里发生了什么,我肯定会欠你一个。privatevoidPost(){HttpWebRequestrequest=null;Uriuri=newUri("xxxxx");request=(HttpWebRequest)WebRequest.Create(uri);request

c# - TryParseExact 返回 false,虽然我不知道为什么

下面代码块中的方法TryParseExact返回true。我想知道为什么。我认为这个日期"2013.03.12"是无效的,因为它不是用斜杠而是点分隔的。在我将CultureInfo"de-De"更改为"en-US"后,该方法返回false。这可能是一个提示,但我仍然不知道为什么会这样。varformat=newstring[]{"yyyy/MM/dd"};varparsed=newDateTime();varresult=DateTime.TryParseExact("2013.03.12",format,newCultureInfo("de-DE"),DateTimeStyles.N

c# - 将窗体设置为父级抛出异常 "Top-level control cannot be added to a control"

我想从另一个表单访问一个表单的变量。单击主窗体中的按钮后,我想将主窗体设置为父窗体,然后调出另一个窗体(子窗体),我将在其中访问主窗体的变量。我的点击处理程序如下:privatevoidbtnSystem_Click(objectsender,EventArgse){Form_EnterPasswordEP=newForm_EnterPassword();EP.Parent=this;//error:Top-levelcontrolcannotbeaddedtoacontrolEP.ShowDialog();}它编译正常,没有任何错误。但是,当我运行主窗体并单击“系统”按钮时,它会抛出

c# - "The type or namespace name ' 引用System.Xml.dll时XmlSerializer ' could not be found"错误

我已经在这上面浪费了几个小时:XmlSerializerserializer;是的,using在那里,引用在那里,我在VS2010中使用.NET4.0制作了整个解决方案,所以它不是那些东西。如果我进入对象资源管理器,我可以在正确的命名空间中找到我想要的XmlSerializer类,但是如果我尝试在我的代码文件中键入上面的行并进行编译,我会得到可怕的Thetypeornamespacename'XmlSerializer'couldnotbefound(areyoumissingausingdirectiveoranassemblyreference?)死亡警告。我也没有在Intelli

c# - 格式化日期时间错误 "Templates can be used only with field access, property access, single-dimension array index.."

在MVCRazorView中,我试图将DateTime字段格式化为仅显示时间。使用下面的代码我收到错误“模板只能用于字段访问、属性访问、一维数组索引或单参数自定义索引器表达式。”@(Html.DisplayFor(m=>row.LastUpdatedDate.ToString("HH:mm:ss")))任何帮助请问是什么导致了这个错误以及如何解决它?感谢您的帮助。 最佳答案 我遇到了同样的问题,我已经解决了。如果您想将“LastUpdatedDate”转换为特定格式,那么您可以试试这个:@Html.TextBoxFor(m=>row

c# - 转换 bool[] -> "false, true, true, false"的简洁代码

如何使用尽可能少的代码行将bool数组转换为字符串,如“false,true,true,false”?Python允许我使用以下内容(非常漂亮和干净):",".join(map(str,[False,True,True,False]))在C#中,string.Join只允许我连接一个字符串数组。那么在C#中做同样事情的捷径是什么? 最佳答案 vararray=new[]{true,false,false};varresult=string.Join(",",array.Select(b=>b.ToString()).ToArray(

c# - 我如何确定为什么 Enyim 内存缓存在存储项目时返回 false?

我如何确定为什么Enyim从以下调用中返回false:cache.Store(Enyim.Caching.Memcached.StoreMode.Set,key,value);其他项目存储正常,因此与服务器的连接似乎不是问题。该对象似乎不大于1MB。那么我怎样才能确定是什么导致了错误呢? 最佳答案 要检查的另一件事是您存储的整个对象图是[Serializable]。如果不是,则Enyim将抛出一个序列化异常,它会告诉您需要将哪个类型标记为可序列化。按照https://github.com/enyim/EnyimMemcached/w