Tag: C#的

在asp.net-mvc的控制器中,我如何获得有关用户浏览器的信息?

我在我的asp.net-mvc网站上logging错误,我想看看是否有反正检测用户的浏览器信息(名称,版本等),因为它似乎是人得到的问题,但因为他们使用很老浏览器。 这个信息将帮助我避免debugging时间,如果我知道他们正在使用“不支持”的浏览器。

LINQ – 查找一个列表中不在另一个列表中的所有项目

我坚持使用LINQ查询(或任何其他有效的方法来完成相同的事情)。 有人可以告诉我如何select一个列表中不存在于另一个列表中的所有项目吗? 基本上,我有一个我通过两个其他列表之间的项目匹配而形成的列表。 我需要find匹配找不到的第一个列表中的所有项目。 有人可以在下面的第二个LINQ查询中填写星号,查询可以实现这个目标吗? 如果我使用TSQL,我会做SELECT * NOT IN () ,但我不认为LINQ允许这样做。 //Create some sample lists. List<IdentifierLookupData> list1 = new List<IdentifierLookupData> { /*Init */ }; List<IdentifierLookupData> list2 = new List<IdentifierLookupData> { /*Init */ }; //Find all items in list1 and list2 that match and store them in joinItems. var joinItems = (from d1 in list1 join […]

如何有效地写在C#中的大文本文件?

我正在C#中创build一个方法,该方法为Google Product Feed生成文本文件。 Feed将包含超过30,000条logging,文本文件的重量约为7Mb。 这是我目前正在使用的代码(为简洁起见删除了一些行)。 public static void GenerateTextFile(string filePath) { var sb = new StringBuilder(1000); sb.Append("availability").Append("\t"); sb.Append("condition").Append("\t"); sb.Append("description").Append("\t"); // repetitive code hidden for brevity … sb.Append(Environment.NewLine); var items = inventoryRepo.GetItemsForSale(); foreach (var p in items) { sb.Append("in stock").Append("\t"); sb.Append("used").Append("\t"); sb.Append(p.Description).Append("\t"); // repetitive code hidden for brevity … sb.AppendLine(); } using (StreamWriter outfile = new […]

源文件中的子目录

我有一个使用Makefilebuild立的C ++库。 直到最近,所有的源代码都在一个目录中,Makefile也是这样做的 SOURCES = $(wildcard *.cpp) 哪些工作正常。 现在我已经添加了一些子目录中的源代码,比如subdir 。 我知道我可以做到这一点 SOURCES = $(wildcard *.cpp) $(wildcard subdir/*.cpp) 但我正在寻找一种方法来避免手动指定subdir ,也就是使wildcard查看子目录,或以某种方式生成子目录列表,并用几个wildcard函数来扩展它。 在这一点上,有一个非recursion解决scheme(即只扩展到第一级)就可以了。 我还没有find任何东西 – 我最好的猜测是使用find -type d列出子目录,但感觉像是一个黑客。 有没有内置的方法来做到这一点?

检查date时间实例是否落入其他两个date时间对象之间

我想知道一个简单的algorithm来检查给定的datetime时间实例是否在C#另外两个实例之间。 注意: 我虽然浏览了这个如何检查给定的date时间对象是“之间”两个date时间? 这是python和更多的PHP。 其他问题大部分是关于两者之间的差异。 细节: 我对时间更具体,date对我无关紧要。 例如,我在10:00 – 2:00 Pm 9:00之间工作的一个工作人员的DataBase条目,例如,我想知道哪些员工在给定的时间从事上课,如2:00 Pm 。 现在,这将返回我在这个时候正在从事的工作人员的细节。

用for循环遍历QMap

我有一个QMap对象,我正在尝试将其内容写入一个文件。 QMap<QString, QString> extensions; //.. for(auto e : extensions) { fout << e.first << "," << e.second << '\n'; } 为什么我会得到: error: 'class QString' has no member named 'first' nor 'second' 是不是typesQPair ?

将DataSet转换为List

这是我的C#代码 Employee objEmp = new Employee(); List<Employee> empList = new List<Employee>(); foreach (DataRow dr in ds.Tables[0].Rows) { empList.Add(new Employee { Name = Convert.ToString(dr["Name"]), Age = Convert.ToInt32(dr["Age"]) }); } 它使用循环来创build一个数据集列表。是否有任何直接的方法或更短的方法或一行代码转换数据集列表

我可以在Linq查询中select多个对象吗?

我对Linq非常陌生,对我一无所知。 我可以在select中返回多个项目吗? 例如我有一个灯具列表(想想橄榄球(或足球的猛拉)固定装置)。 每个夹具包含一个主客场球队和主客场比分。 我想要得到所有的队伍。 我想用类似的东西 IEnumerable<Team> drew = from fixture in fixtures where fixture.Played && (fixture.HomeScore == fixture.AwayScore) select fixture.HomeTeam && fixture.AwayTeam; 我知道这个语法是不正确的,我不知道是否可以这样做。 我需要两个查询,然后连接它们? 编辑:这实在是一个学习的东西,所以这是没有关键的,以任何特定的方式实现这一点。 基本上,在这个阶段,我想要的是一个已经绘制的球队列表。 一个例子的用法可能是,对于给定的装置列表,我可以find所有被抽中的球队,这样我就可以在一张牌桌上以1分(3胜1负)来更新他们的排名。 干杯詹姆斯

文件是空的检查

我如何检查C#文件是否为空? 需要这样的东西: if (file is empty) { //do stuff } else { //do other stuff }

C#字段命名指南?

我将在C#代码上自己做一些工作,但是我想确保遵循最广泛接受的命名约定,以便让其他开发人员,发布代码或销售我的代码。 现在我正在按照微软已经设定的命名约定,因为它们似乎是最被广泛接受的。 他们没有提到的一件事是为私人领域命名。 在大多数情况下,我已经看到他们在camelCase中命名像受保护的字段,但是这给我一个问题,因为参数名称应该在camelCase中。 以下面的构造函数为例: public GameItem(string baseName, string prefixName, string suffixName) { //initialize code } 现在,如果我也使用camelCase作为私有字段,除非我使用“this”来访问类字段(我认为这违背了大多数标准,更不用说意味着更多的input),否则会存在命名冲突。 一个解决scheme是给参数一个不同的名字,但是不合逻辑意义的是给相同的数据2个不同的名字。 我所知道的唯一的其他解决scheme在C ++编码中是很常见的,一开始就给私人成员一个下划线。 这种解决scheme通常被C#编码接受吗? 有没有解决这个问题的另一种方法(比如只使用属性(使用PascalCase)访问字段,即使在类本身)?