任何CPU – 首选32位

Any CPU – 首选32位选项有什么作用? 虽然我知道WinRT无法处理exe并且只能运行Windowsapp store应用,但StackOverflow上存在几个问题,它们提出同样的问题并且都引用了这个博客 : 在.NET 4.5和Visual Studio 11中,奶酪已被移动。 大多数.NET项目的默认设置是AnyCPU,但现在AnyCPU有多个含义。 还有一个额外的子类型AnyCPU,“任何CPU 32位首选”,这是新的默认值(总体而言,/ platform C#编译器交换机现在有五个选项:x86,Itanium,x64,anycpu和anycpu32bitpreferred )。 使用AnyCPU的那种风格时,语义如下: 如果进程在32位Windows系统上运行,则它将以32位进程运行。 IL编译为x86机器代码。 如果进程在64位Windows系统上运行,则它将以32位进程运行。 IL编译为x86机器代码。 如果进程在ARM Windows系统上运行,则它将以32位进程运行。 IL编译为ARM机器代码。 但是,购买Surface RT后,我创建了一个Hello World程序,将其设置为Any CPU,检查Prefer 32 Bit标志,编译并将其复制到Surface。 当我运行该程序时,操作系统告诉我,它无法运行该程序,我应该像任何x86 / x64 exe一样关注市场。 显示的确切消息是:“此应用程序无法在您的PC上运行。要查找此PC的应用程序,请打开Windowsapp store。” 那么这实际上做了什么,是否可以在ARM上为Window RT编译Any CPU应用程序?

如何下载memoryStream文件

我是asp.net的初学者,我用PdfRpt创建pdf文件。 我在课堂上写这段代码 namespace PdfReportSamples.CustomPriceNumber { public class CustomPriceNumberPdfReport { public IPdfReportData CreatePdfReport() { using (var memoryStream = new MemoryStream()) { var ii= new PdfReport().DocumentPreferences(doc => { doc.RunDirection(PdfRunDirection.LeftToRight); doc.Orientation(PageOrientation.Portrait); doc.PageSize(PdfPageSize.A4); doc.DocumentMetadata(new DocumentMetadata { Author = “Vahid”, Application = “PdfRpt”, Keywords = “Test”, Subject = “Test Rpt”, Title = “Test” }); }) .DefaultFonts(fonts => { fonts.Path(Environment.GetEnvironmentVariable(“SystemRoot”) + […]

在关注性能时,使用DateTime.Today的变量有多重要?

我刚看到这个赞成的评论 IIRC DateTime.Today是一个非常昂贵的调用,因此您最好先将值存储在变量中。 这是对包含代码的post的回应: var first = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).AddMonths(-1); var last = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).AddDays(-1); 如果我希望提高性能,将DateTime.Today存储在变量中而不是多次调用它有多重要? 大致有多少使用DateTime.Today可以certificate为它创建一个变量? 编辑:我意识到我应该测试我的程序,看看是否存在性能问题,然后再担心像这样微不足道的事情。 为了这个问题,假设我已经这样做并确定需要进行额外的优化。

参数比方法更难访问

我正在尝试将列表从一个表单类传递到另一个表单类。 这是代码: List myArgus = new List(); private void btnLogin_Click(object sender, EventArgs e) { // Get the selected branch name string selectedBranch = lbBranches.SelectedItem.ToString(); for (int i = 0; i < myArgus.Count; i++) { if (myArgus[i]._branchName == selectedBranch) { // Open the BranchOverview form BranchOverview branchOverview = new BranchOverview(myArgus[i]); branchOverview.Show(); } else { // Branch […]

如何在asp.net MVC 4中手动删除cookie

我需要手动删除身份validationcookie(而不是使用FormsAuthentication.SignOut whcih由于某些原因不起作用)。 我试过了 System.Web.HttpContext.Request.Cookies.Remove(cookieName); // for example .ASPXAUTH System.Web.HttpContext.Response.Cookies.Remove(cookieName); // for example .ASPXAUTH FormsAuthentication.SignOut(); // I don’t know why this one does not work 这些命令都不起作用。 事实上,响应cookie是空的,请求cookie包含我想删除的cookie,当执行以下命令时它不再包含我删除的cookie但在浏览器中cookie仍然存在,我能够做到授权用户甚至可以做的事情之后退出。

C#generics约束

是否可以枚举通用约束中“可用”的类型? T MyMethod() where T : int, double, string 为什么我要这样做是因为我有一个小的评估引擎,并且想编写这样的代码: bool expression.Evaluate(); 要么 int expression.Evaluate(); 但我想禁止 MyCustomClass expression.Evalaute();

T4代码生成:当前项目中的访问类型

使用T4代码生成,是否可以访问当前项目中定义的类型? 例如,如果我有一个接口,我想将其实现委托给另一个类,即 interface IDoSomething { public void do_something(); } class DoSomethingImpl : IDoSomething { public void do_something() { // implementation… } } class SomeClass : IDoSomething { IDoSomething m_doSomething = new DoSomethingImpl(); // forward calls to impl object public void do_something() { m_doSomething.do_something(); } } 我想通过代码生成自动化SomeClass的呼叫转发; 这可能吗?

为什么枚举声明接受短而不是Int16

我想声明一个非默认底层类型的新枚举。 这有效: public enum MyEnum : short { A, B, C, } 但我不明白为什么这不编译: public enum MyEnum : System.Int16 { A, B, C, } 编译说 输入byte,sbyte,short,ushort,int,uint,long或ulong expected 我知道short是所有.NET版本(包括32/64位版本)的Int16的别名。 我不明白为什么编译器在该特定情况下给别名赋予不同的含义。 任何解释?

在Dispose中清空“using”语句

最近我看到一些代码编写如下: public void Dipose() { using(_myDisposableField) { } } 这对我来说似乎很奇怪,我更喜欢看myDisposableField.Dispose(); 有什么理由使用“使用”来处理您的对象而不是明确地进行调用?

C#的经纬度边界框?

我只想找到一个简单的C#类,它接收起始纬度和经度以及距离并找到边界框(max lat,min lat,max lon,min lon)。 在这里还有其他类似的问题,但没有一个真正回答这个问题,那些问题不在C#中。 救命。