Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

6
从C#通用字典中筛选出值
我有一个C#字典,Dictionary<Guid, MyObject>我需要根据的属性进行过滤MyObject。 例如,我要从字典中删除所有记录,其中MyObject.BooleanProperty = false。实现这一目标的最佳方法是什么?

28
byte []数组模式搜索
任何人都知道一种在byte []数组中搜索/匹配字节模式然后返回位置的好方法。 例如 byte[] pattern = new byte[] {12,3,5,76,8,0,6,125}; byte[] toBeSearched = new byte[] {23,36,43,76,125,56,34,234,12,3,5,76,8,0,6,125,234,56,211,122,22,4,7,89,76,64,12,3,5,76,8,0,6,125}

7
在字典中增加数值
我正在使用下面的代码在字典中增加或插入一个值。如果我要递增的键不存在,我想将其值设置为1。 public void IncrementCount(Dictionary<int, int> someDictionary, int id) { int currentCount; if (someDictionary.TryGetValue(id, out currentCount)) { someDictionary[id] = currentCount + 1; } else { someDictionary[id] = 1; } } 这样是否合适?
74 c#  dictionary 




13
C#是部分解释还是真正编译?
关于此有很多矛盾的信息。尽管有些人说C#已被编译(因为它被编译为IL,然后在运行时被编译为本机代码),但其他人却说它被解释为需要.NET。EN Wiki说: 首先将许多解释语言编译为某种形式的虚拟机代码,然后在运行时将其解释为或编译为本机代码。 所以我很困惑。谁能解释清楚吗?


14
有没有一种方法只能在C#中设置一次属性
我正在寻找一种方法,以允许仅将C#对象中的属性设置一次。编写代码很容易做到这一点,但是如果存在的话,我宁愿使用一种标准的机制。 公共OneShot <int> SetOnceProperty {get; 组; } 我想发生的是,如果尚未设置属性,则可以设置该属性,但是如果之前已设置,则抛出异常。它的功能应类似于Nullable值,在这里我可以检查它是否已设置。
74 c#  .net 

28
交换两个变量而不使用临时变量
我希望能够交换两个变量,而无需在C#中使用临时变量。能做到吗? decimal startAngle = Convert.ToDecimal(159.9); decimal stopAngle = Convert.ToDecimal(355.87); // Swap each: // startAngle becomes: 355.87 // stopAngle becomes: 159.9
74 c#  algorithm  swap 

7
从XAML中的* .resx文件获取值
是否可以将资源文件中的某些值直接添加到XAML标记中?或为了进行本地化,我们总是必须在* .cs文件中进行如下操作: txtMessage.Text = Messages.WarningUserMessage; Messages资源txtMessage是哪里,文本块是哪里。
74 c#  xaml  localization  resx 

9
如何检查对象的所有属性为null还是为空?
我有一个物体让我们称之为 ObjectA 该对象具有10个属性,并且全部是字符串。 var myObject = new {Property1="",Property2="",Property3="",Property4="",...} 无论如何要检查所有这些属性是否为null或为空? 那么,任何内置方法会返回true或false? 如果其中任何一个不为null或为空,则返回为false。如果它们全部为空,则应返回true。 我的想法是我不想编写10 if语句来控制这些属性为空还是null。 谢谢
74 c#  properties 

6
用Moq模拟EF DbContext
我正在尝试使用模拟的DbContext为我的服务创建单元测试。我创建了一个IDbContext具有以下功能的接口: public interface IDbContext : IDisposable { IDbSet<T> Set<T>() where T : class; DbEntityEntry<T> Entry<T>(T entity) where T : class; int SaveChanges(); } 我的真实上下文实现了此接口IDbContext和DbContext。 现在,我尝试IDbSet<T>在上下文中模拟,因此它返回一个List<User>。 [TestMethod] public void TestGetAllUsers() { // Arrange var mock = new Mock<IDbContext>(); mock.Setup(x => x.Set<User>()) .Returns(new List<User> { new User { ID = 1 } …

9
如何创建///摘要
如何在Visual Studio中生成此类摘要? /// <summary> /// Returns a number /// </summary> /// <param name="num"></param> /// <returns></returns>
74 c#  visual-studio 

7
使HashSet <string>不区分大小写
我有HashSet参数的方法。我需要在其中包含不区分大小写的包含内容: public void DoSomething(HashSet&lt;string&gt; set, string item) { var x = set.Contains(item); ... } 有什么办法可以使现有的HashSet不区分大小写(不创建新的)? 我正在寻找性能最佳的解决方案。 编辑 包含可以被多次调用。所以IEnumerable扩展对我来说是不可接受的,因为它的性能低于本机的HashSet Contains方法。 解 既然,回答我的问题是“否”,那是不可能的,我创建并使用了以下方法: public HashSet&lt;string&gt; EnsureCaseInsensitive(HashSet&lt;string&gt; set) { return set.Comparer == StringComparer.OrdinalIgnoreCase ? set : new HashSet&lt;string&gt;(set, StringComparer.OrdinalIgnoreCase); }
74 c#  .net  hashset 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.