草庐IT

c# - 如何在 C# 中检查给定的 URL 是 HTTP 还是 HTTPS

我需要检查给定的URL(不一定以http或https为前缀)是HTTP还是HTTPs。这在C#中可行吗?如果用户只提供没有任何前缀的www.dotnetperls.com,我必须能够识别它是HTTP的。尝试了以下,HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create("www.dotnetpearls.com");stringu=request.RequestUri.Scheme;但这会给出无效的URL错误。它期望指定协议(protocol)。 最佳答案 尝试这样的事情:pu

c# - 如何确定使用 .net 的 Windows 机器上是 ACE 还是 JET?

如何确定(对于运行windowsxp/vista/7的机器)是否安装了ACE或JET,以便我可以使用适当的连接字符串连接到访问数据库。 最佳答案 您可以检查一个注册表项。它位于HKCR\Microsoft.ACE.OLEDB.12.0。您可以使用RegistryKey阅读它类。 关于c#-如何确定使用.net的Windows机器上是ACE还是JET?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

c# - WPF支持触摸屏还是多点触摸屏?

我想知道.Net3.5上的WPF是否支持笔记本电脑的触控或多点触控?有没有很酷的Demo展示一下效果,不胜感激。我正在使用VSTS2008+C#。提前致谢,乔治 最佳答案 WPF4.0Beta2支持完整的多点触控,但仅限于Windows7,因为Windows7是第一个支持多点触控的Windows版本。对于XP上的3.5,您可以在http://code.google.com/p/breezemultitouch/试用WPF3.5多点触控框架的Breeze。它是开源的,可以插入TUIO(multi-touchprotocol).TUIO

c# - Action<T> 还是 Action<in T>?

我在MSDN上阅读有关ActionDelegate的信息所以这符合语法publicdelegatevoidAction(Tobj);比我看的c-sharpcorner.com它使用了这种语法publicdelegatevoidAction(Tobj);如您所见,T之前没有in。哪种语法是正确的,in是什么意思?编辑:用于Predicate的相同语法。谢谢。 最佳答案 in和out(通用逆变和协变)仅在C#4中引入,委托(delegate)和接口(interface)针对.NET4进行了修改-所以Action在.NET3.5中变为Ac

c# - WPF 应用程序应该用 C++/CLI 还是 C# 编写?

WPF应用程序的核心是托管应用程序?Right?因此,我必须在使用托管C++或托管C#之间做出选择。几年前我尝试过托管C++。它似乎还没有为黄金时段做好准备。我猜微软在托管C#上投入的精力比托管C++多。因此,似乎使用托管C#是两者之间的最佳选择。是这样吗?您对这两种语言的WPF都有哪些体验?提前致谢。 最佳答案 托管C++已被C++/CLI取代,“托管C#”就是C#。我强烈建议您在新项目中使用C#,并且仅在需要时才使用C++/CLI。C#具有更好的支持,拥有更大的用户群,并且更易于在VisualStudio2010中使用。此外,请

c# - 我应该转换我的 lambda 还是转换 IEnumerable?

在我的项目中,我有一个MyClass实现了IMyClass。我需要通过转换其他项目的列表来返回IMyClass的列表。为简单起见,假设我可以创建一个MyClass,只需将另一个项目传递给它的构造函数,即newMyClass(item)。考虑以下两行,它们(据我所知)产生相同的结果:varoption1=items.Select(item=>newMyClass(item)).Cast().ToList()varoption2=items.Select(item=>newMyClass(item)asIMyClass).ToList()在我看来,选项#1需要双重枚举,一次是将所有项目转换

c# - SqlCommand 还是 SqlDataAdapter?

我正在创建一个类似于小型收银应用程序的应用程序,用于记录客户、员工、服务、销售和约会。我正在使用Windows窗体,并且在该DataGrids中。我已经创建了将用于该应用程序的数据库。我想知道我是否应该改用SqlCommand-SqlDataReader或SqlDataAdapter-DataSet。哪种方法更好? 最佳答案 这在很大程度上取决于您想要的操作类型。以下是我的建议。如果您想更快地读取数据,请使用SQLDataReader,但这是您需要采取的操作成本在那之后也读过。打开连接读取数据关闭连接。如果您忘记关闭,则会影响性能。

c# - Entity Framework 核心 - 包含区分大小写还是不区分大小写?

EntityFramework核心中的“包含”应该等同于SQL%like%运算符。因此,“包含”应该不区分大小写,但它区分大小写!(至少在postgres中????)以下仅在使用正确的关键字大小写时才输出结果。context.Counties.Where(x=>x.Name.Contains(keyword)).ToList();我做错了什么? 最佳答案 旧版本的EF核心曾经是这种情况。现在string.Contains区分大小写,例如对于sqlite,它映射到sqlite函数`instr()'(我不知道postgresql)。如果

c# - list.count 是在物理上遍历列表来计算它,还是保留一个指针

我正在遍历一个大的对象列表来对列表中的所述对象做一些事情。在我的迭代过程中,我会根据特定条件从列表中删除一些对象。完成所有操作后,我需要根据列表中的对象数量更新UI。(T列表)。问题:WhenIcalllist.count,does.netactuallyiteratethroughthelisttocountit,ordoesitstorethecountasaproperty/variable?如果.net在物理上重复遍历列表,我也可以在自己遍历列表时保留一个计数器,从而节省开销?谢谢 最佳答案 它只是保留一个内部整数来跟踪项目

c# - 要通过什么?引用对象还是值类型?

伙计们,我有一个“最佳实践问题”例如我有这个类(class):classPerson{publicintage{get;set;}}classComputer{publicvoidcheckAge(Personp)//WhichoneisrecommendedTHIS{//DosmthgwiththeAGE}publicvoidcheckAge(intp)//ORTHIS{//Dosmthgwiththeage.}}建议通过什么?正是我需要的(int-value类型)或整个对象(引用类型)我问这个是因为我在我正在制作的应用程序上使用LINQ,并且我已经创建了许多实体,我应该在其中传递I