草庐IT

同一天

全部标签

c# - StreamReader 和 StreamWriter 在同一个 Stream 上?

如何关闭使用相同底层流的StreamReader和StreamWriter?varstream=/*...*/;varreader=newStreamReader(stream);varwriter=newStreamWRiter(stream);我知道我可以简单地忽略关闭读取器/写入器并关闭底层流。然而,这似乎有点hack,因为它是基于这样的假设,即读者/作者没有任何东西可以处理(将来可能不会是这种情况)。我知道这已在.NET4.5中通过额外的构造函数参数得到解决,但在.NET4.5发布之前,我该如何以正确的方式解决它? 最佳答案

c# - 通过接口(interface)在多个集合中引用同一个对象

警告:这个问题使用类比角色扮演游戏作为例子。假设我正在使用C#制作我梦寐以求的角色扮演游戏。当玩家进入战斗时,会出现某种战场,其中包含与战斗相关的每个元素的引用,例如战场上的各种对手和可用元素。现在所有这些元素都有一个但几个角色:例如,盟友(通过直接继承成为战士)能够在战场上移动、发出命令或成为敌人的目标。现在那把巨大的石中剑在战斗中也有一些作用。显然它不能移动也不能发出命令,但它仍然可以被瞄准,并且它可以(希望)被抬起或使用。所有这些行为在我的代码中都由接口(interface)表示,因此无论实现它的对象是什么,都可以使用具有相同行为的所有对象。代码示例:publicclassAll

c# - 为什么我不能在同一个类上使用 WCF DataContract 和 ISerializable?

我有一个类需要能够序列化为SQLServersession变量并可通过WCF服务使用。我声明如下namespaceMyNM{[Serializable][DataContract(Name="Foo",Namespace="http://www.mydomain.co.uk")]publicclassFoo:IEntity,ISafeCopy{[DataMember(Order=0)]publicvirtualGuidId{get;set;}[DataMember(Order=1)]publicvirtualstringa{get;set;}DataMember(Order=2)]pu

c# - 在同一解决方案中的 C# 项目和 C++ 项目之间进行交互

我有一个用C++/cli编写的Windows窗体应用程序。我想用一些新的形式扩展这个应用程序,我想在一个单独的项目中用C#创建它们。是否可以简单地将C#项目添加到具有C++项目的解决方案中,并且两者将交互?通过交互,我的意思是说,在c#项目中编写的表单上单击一个按钮将能够调用c++项目中的方法。也许换种方式问,C#项目中的对象是否可以引用c++项目中的对象?如果是这样,您是否知道可以帮助我入门的示例代码?谢谢。 最佳答案 是的。C++/CLI应用程序将能够通过以下两种方式之一与C#应用程序交互:如果您使用的是CLI扩展(从您的帖子来

c# - ref 参数和赋值在同一行

我最近遇到了一个讨厌的错误,简化后的代码如下所示:intx=0;x+=Increment(refx);...privateintIncrement(refintparameter){parameter+=1;return1;}Increment调用后x的值为1!一旦我发现发生了什么,这很容易解决。我将返回值分配给一个临时变量,然后更新x。我想知道如何解释这个问题。我忽略了规范中的某些内容还是C#的某些方面。 最佳答案 +=读取左侧参数然后读取右侧参数,因此它读取变量,执行递增方法,对结果求和,然后分配给变量。在这种情况下,它读取0,

c# - 在日期中设置特定的一天

我在AjaxControlToolkit中使用CalenderExtenderControl。基本上有2个日期控件:StartDate和Enddate(均与calenderextender关联)。根据选择的开始日期,我在结束日期字段中填充日期,例如添加月数或天数。但是就像我已经能够添加月份,但还想设置那个月的特定日期,但我无法做到。例子:今天的日期是2012年12月18日。大约每三个月的第一天,所以我加上3个月,这个月就是2013年2月。但我想设置Day2013年2月1日。我做不到。请帮忙。 最佳答案 您可以通过添加月份来设置一个月

c# - 如何在同一解决方案中从 C++/CLi 项目引用 C# 项目

我在一个解决方案中有两个项目,一个是C#库,另一个是C++/CLI库。我使用引用菜单在C++/CLI项目中添加了对c#库的引用。然后我添加#using并尝试用引用程序集usingnamespacenamspace.subnamespace;但我收到无法找到assembly.name.dll的错误。我已尝试匹配程序集名称的大小写和所有小写,但无济于事。令人惊讶的是,互联网上的任何地方都没有关于如何引用您自己创建的程序集的引用资料。正确的做法是这样做,如果我做对了,我应该采取什么措施来诊断这一点。 最佳答案 您需要将C#程序集的路径添加

c# - 如何在asp.net mvc 4中上传图片并显示在同一页面上

我已经使用asp.netmvc4和razor语法开发了一个网络应用程序。我需要使用文件uploader上传一张图片,并在同一页面上显示图片的详细信息。例如,在我的应用程序的“联系页面”中有一个“文件uploader”和“提交按钮”。当我上传一个人的图像并单击提交按钮时,它应该在页面的某处显示图像及其详细信息,如图像名称、尺寸等。有什么办法可以实现吗?这是我的Controller类的代码publicclassFileUploadController:Controller{////GET:/FileUpload/publicActionResultIndex(){returnView();

c# - 线程 sleep /等到新的一天

我在一个循环中运行一个进程,它对它每天执行的操作数有限制。当它达到这个限制时,我目前已经让它循环检查时间以查看它是否是新日期。最好的选择是:不断检查新日期的时间计算到午夜还有多少秒,然后睡那段时间还有别的吗? 最佳答案 不要为这种类型的事情使用Thread.Sleep。使用Timer并计算您需要等待的时间。varnow=DateTime.Now;vartomorrow=now.AddDays(1);vardurationUntilMidnight=tomorrow.Date-now;vart=newTimer(o=>{/*Dowor

c# - 如何在 Visual Studio 2012 中切换(或突出显示)同一解决方案的项目?

我是VisualStudio的新手,这个问题已经困扰我好几天了。我在VisualStudio2012中的同一个解决方案中有两个项目。在我的解决方案管理器中,其中一个被突出显示,所以当我在没有调试的情况下启动它时Ctrl+F5突出显示的那个开始。如何突出显示(然后按下Ctrl+F5)启动其他项目?无需关闭并重新打开项目。 最佳答案 右键单击->设置为启动项目。 关于c#-如何在VisualStudio2012中切换(或突出显示)同一解决方案的项目?,我们在StackOverflow上找到一