草庐IT

不可能

全部标签

c# - 开箱即用地更新 EF 中的子集合真的不可能吗(又名非 hacky 方式)?

假设您的实体中有这些类。publicclassParent{publicintParentID{get;set;}publicvirtualICollectionChildren{get;set;}}publicclassChild{publicintChildID{get;set;}publicintParentID{get;set;}publicvirtualParentParent{get;set;}}并且您有一个用户界面来更新Parent及其Children,这意味着如果用户添加新的Child那么您必须插入,如果用户编辑了一个现有的Child那么你需要更新,如果用户删除了一个C

c# - 如何为其派生类型的每种可能组合实现基类的方法

我有以下由多个其他类实现的Shape接口(interface),例如Rectangle、Circle、Triangle...interfaceIShape{boolIsColliding(IShapeother);}IsColliding方法应该检查一个Shape是否与另一个Shape发生碰撞,而不管它们的具体类型。然而,每一对形状(矩形/矩形、矩形/圆形、圆形/三角形等)都有自己的碰撞检查实现。我正在努力为这个问题找到一个好的设计解决方案。天真的方法是切换“其他”形状的类型以调用正确的实现:classRectangle:IShape{boolIsColliding(IShapeoth

c# - 为什么 FSharpOption 的某些属性(例如 IsSome 和 IsNone)在 C# 中不可见?

在我看来,F#选项类型的某些属性在C#项目中是不可见的。通过检查类型,我或多或少可以看出原因,但我真的不明白到底发生了什么,为什么做出这些选择或者如何最好地规避这个问题。以下是演示该问题的一些片段。我有一个包含两个项目的VS2015解决方案,一个C#项目和一个F#项目。在F#项目中,我有一个定义如下的类:typeFoo()=memberthis.Bar()=Some(1)此外,在F#中我可以这样写:letoption=(newFoo()).Bar()letresult=ifoption.IsNonethen"Isnone"else"Issome"所以看起来选项类型有一个名为IsNone

c# - 是否有可能在代码中丢失过度继承?

我目前正在开发一个由其他人完成的asp.net站点,它的功能复杂得可笑……嗯,我是这么认为的!几乎每个类都继承自另一个类,然后是另一个类,然后是另一个类,依此类推......你必须平均达到8/10级才能获得基类,有时甚至更多!这些类内部还有其他类,它们遵循与Uber继承相同的模式。这让我多次迷失在代码中,结果天知道在visualstudio上打开了多少个标签页。这是好的/正常的做法还是不好的做法?我觉得这是一种不好的做法,因为过度使用继承导致代码变得不可扩展,如此简单的事情变得过于复杂......但我可能是错的:)谢谢! 最佳答案

c# - System.Web.UI 在控制台应用程序中不可用?

我正在尝试编写一个将数据输出到HTML文件的快速控制台应用程序,但是我无法访问System.Web.UI命名空间。将System.Web添加到我的引用会在解决方案资源管理器中的引用名称顶部放置一个警告图标,并且System.Web在.NET引用列表中不可用(为了让我实际将它添加到我的项目中必须转到对象浏览器并从那里添加它)。有人知道我可能遗漏了什么吗?非常感谢大家! 最佳答案 在VisualStudio2010中,控制台应用程序的默认目标框架是“.NETFramework4-ClientProfile”,它不包括System.Web

c# - 将 PictureBox 中的图像调整到尽可能大,同时保持纵横比?

我试图让PictureBox控件中的图像根据窗口的大小自动调整其大小,但保持纵横比。到目前为止,只需将SizeMode设置为StretchImage即可使图像拉伸(stretch)以适合整个PictureBox控件。这忽略了宽高比,这不是我想要的。是否可以保持宽高比,但仍将图像拉伸(stretch)到最大,它可以随着表单大小的变化而动态移动?是否有可能做到这一点并且它仍然居中?我想我可以在每次调整窗口大小时在内存中重新创建图像,但这似乎是个坏主意。 最佳答案 我相信这是PictureBoxSizeMode.Zoom的效果.文档说:T

C# 增加堆大小 - 是否可能

我在读取大量文件时使用C#出现内存不足异常我需要更改代码,但目前我可以增加堆大小(就像我在Java中那样)作为短期修复吗? 最佳答案 .Net会自动执行此操作。看起来您已经达到了一个.Net进程可以用于其对象的内存限制(在32位机器上,这是2标准或3GB,通过使用/3GB启动开关。Leppie和EricLippert的信息致谢).重新考虑您的算法,或者更改为64位机器可能会有所帮助。 关于C#增加堆大小-是否可能,我们在StackOverflow上找到一个类似的问题:

C# 和 Razor - 您请求的页面类型未提供,因为它已被明确禁止。扩展名 '.cshtml' 可能不正确

我浏览了其他帖子,但似乎没有一个能回答我的问题。我在WebMatrix(ASP.NET)中创建了一个空站点我在VWD2013中打开了那个网站我按了F5,它在http://local.com:59833/ContentPage.cshtml这样的URL上运行良好我转到http://local.com/cscsu_bi/ContentPage.cshtml它不适用于以下错误“/”应用程序中的服务器错误。不提供此类页面。说明:您所请求的页面类型未被提供,因为它已被明确禁止。扩展名“.cshtml”可能不正确。请检查下面的URL并确保其拼写正确。请求的URL:/cscsu_bi/Content

c# - 读取可能不存在的 Azure DocumentDB 文档

我可以像这样从AzureDocumentDB查询单个文档:varresponse=awaitclient.ReadDocumentAsync(documentUri);如果文档不存在,这将抛出DocumentClientException。在我的程序中,我遇到了文档可能存在也可能不存在的情况。有没有什么方法可以在不使用try-catch并且不对服务器进行两次往返的情况下查询文档,首先查询文档,然后检索文档是否存在? 最佳答案 遗憾的是,没有其他方法,要么处理异常,要么进行两次调用,如果选择第二条路径,这是一种性能驱动的检查文档是否存

c# - 从具有 Distinct/GroupBy 的 IEnumerable 中选择并排序——可能吗?

假设你有这个:classLogEntry{intID;intUserName;datetimeTimeStamp;stringDetails;}并且您已经提取了一组这样的数据:IDUsernameTimestampDetails1foo1/01/2010Accountcreated2zip2/02/2010Accountcreated3bar2/02/2010Accountcreated4sandwich3/03/2010Accountcreated5bar5/05/2010Stolefood6foo5/05/2010Can'tfindfood7sandwich8/08/2010Don