Tag: C#的

如何在C#中检索磁盘信息?

我想使用C#访问计算机上逻辑驱动器的信息。 我该如何做到这一点? 谢谢!

LINQ to Entities中的“NOT IN”子句

有没有反正我可以创build一个不在子句中,像我将在SQL Server中的Linq实体 ?

LINQ to Entities不支持“date”。 仅支持初始化器,实体成员和实体导航属性

我正试图执行下面的代码,并收到错误 public List<Log> GetLoggingData(DateTime LogDate, string title) { var context = new LoggingEntities(); var query = from t in context.Logs where t.Title == title && t.Timestamp == LogDate select t; return query.ToList(); } 我收到的错误是“指定的types成员”Date“在LINQ to Entities中不受支持,只支持初始值设定项,实体成员和实体导航属性。 我已经尝试过把每一个字母都转换成一个string,只是比较date部分,但似乎无法得到正确的结合。 任何帮助是极大的赞赏。

通过inheritance扩展一个枚举

我知道这反对枚举的想法,但是有可能在C#/ Java中扩展枚举吗? 我的意思是在给枚举增加新的值的意义上的“扩展”,也是在从现有枚举inheritance的OO意义上的“扩展”。 我认为在Java中是不可能的,因为它最近才得到它们(Java 5?)。 不过,C#似乎对那些想做疯狂事情的​​人更为宽容,所以我认为这可能是有可能的。 想必它可以通过reflection来破解(而不是你实际上都用这种方法)? 我不一定有兴趣实现任何给定的方法,它只是激起我的好奇心,当它发生在我身上:-)

为什么C#不允许只读局部variables?

与同事就此事进行友好的讨论。 我们对此有一些想法,但是想知道SO群体对此有何看法?

非静态的const成员,不能使用默认赋值运算符

我正在扩展的一个程序使用std::pair<>很多。 在我的代码中,编译器会引发一个相当大的问题: 非静态的const成员'const Ptr std :: pair,const double *> :: first'不能使用默认赋值运算符 我不确定这是指什么? Ptr类缺less哪些方法? 导致此问题的原始呼叫如下所示: vector_of_connections.pushback(pair(Ptr<double,double>,WeightValue*)); 它将一个std::Pair<Ptr<double,double>, WeightValue*>放到一个vector上,其中WeightValue*是一个约3个函数的constvariables,而Ptr<double,double>是从迭代器在另一个向量上工作。 为了将来的参考, Ptr<double,double>是一个指向Node对象的指针。

Convert.ToInt32和(int)有什么区别?

下面的代码会引发一个编译时错误 无法将types“string”转换为“int” string name = Session["name1"].ToString(); int i = (int)name; 而下面的代码编译并成功执行: string name = Session["name1"].ToString(); int i = Convert.ToInt32(name); 我想知道: 为什么第一个代码会产生编译时错误? 这两个代码片段有什么区别?

😃(和其他unicode字符)不能被g ++识别的标识符

我发现,即使启用了-fextended-identifiers选项,我也不能使用😃作为g ++ 4.7的有效标识符: int main(int argc, const char* argv[]) { const char* 😃 = "I'm very happy"; return 0; } main.cpp:3:3:错误:在程序中丢失'\ 360' main.cpp:3:3:错误:在程序中丢失'\ 237' main.cpp:3:3:错误:在程序中丢失'\ 230' main.cpp:3:3:错误:在程序中丢失'\ 203' 经过一些Googlesearch之后,我发现UTF-8字符在标识符中还不被支持,但通用字符名称应该可以工作。 所以我把我的源代码转换为: int main(int argc, const char* argv[]) { const char* \U0001F603 = "I'm very happy"; return 0; } main.cpp:3:15:错误:通用字符\ U0001F603在标识符中无效 所以显然😃不是一个有效的标识字符。 但是,该标准特别允许附件E.1中的范围为10000-1FFFD字符,并且不允许它作为E.2中的初始字符。 我的下一个努力是看看是否有其他允许的unicode字符的工作 – 但我没有试过。 公安条例(💩)的性质甚至不重要。 […]

在wpf中禁用项目控制上的鼠标滚轮

我有一个用户控件,它有一个滚动查看器,然后一堆儿童控制,如文本框,单选button,列表框等内部。 我可以使用鼠标滚轮滚动父滚动查看器,直到我的鼠标落在一个列表框内,然后鼠标滚轮事件开始进入列表框。 有没有办法让列表框发送这些事件回到父控制? 从这个问题的父控件内部移除列表框( 当滚动查看器的子控件时鼠标滚轮不工作 )不是一个解决scheme。 我努力了 void ListBox_PreviewMouseWheel(object sender, MouseWheelEventArgs e) { e.Handled = true; } 但那也没用。 谢谢

WinForms | C#| 自动完成在文本框的中间?

我有一个文本框,像这样自动完成: txtName.AutoCompleteMode = AutoCompleteMode.Suggest; txtName.AutoCompleteSource = AutoCompleteSource.CustomSource; txtName.AutoCompleteCustomSource = namesCollection; 它的工作原理,但只在一个文本框的开始。 我希望自动完成function能够在文本框中的任何位置启动用户input的任何单词。