C# 从附属程序集获取所有受支持的区域性

我正在使用卫星程序集来保存C#应用程序中的所有本地化资源 我需要做的是在GUI中创建一个包含应用程序所有可用语言的菜单。有没有办法动态获取信息?特定语言的每个附属程序集的名称相同,但位于以特定区域性命名的子文件夹中,例如fr或fr-CA。 也许您可以使用此事实并扫描文件夹层次结构来动态构建该菜单。此函数返回App_GlobalResources文件夹中所有已安装区域性的数组-根据您的需要更改搜索路径。 对于不变区域性,它返回“auto” 公共静态字符串[]GetInstalledCultures

如何以编程方式将网站(C#)添加到IIS 6.0?

我们有一个web应用程序,到目前为止,它安装在IIS中的“默认网站”下。现在,一位客户希望我们将其安装在另一个网站下,我们希望通过安装程序来实现这一点。 我的问题分为两部分:A)如何通过编程在“默认网站”旁边添加另一个网站? B) 我们正在使用Windows Installer-是否有办法在安装程序中及时触发我为a节编写的任何代码,以便在新位置进行安装?在游戏中覆盖Install()似乎太晚了…如果您使用WiX创建MSI,请参阅。不是MSI文件方面的专家,但您可以通过使用adsutil.vbs编

C# Visual Studio项目需要哪些文件?

我想使用git来管理我的各种VisualStudio项目。不幸的是,除了我的代码所包含的一两个.cs文件之外,它们似乎还包含许多文件 构建项目实际上需要这些文件中的哪一个?您只需要项目和解决方案文件。csproj、vbproj、sln 编辑 我的意思是除了项目中的实际文件之外。.csproj、assemblyinfo.cs,以及您的代码和解决方案(.sln)文件 还有,你可以看看杰夫的作品。此程序将清除所有不必要的文件和文件夹。我认为查看Visual Studio项目并知道从项目中排除哪些内容更

C# 在关于Equals override的msdn指南中,为什么在null检查中强制转换为对象?

我只是在看(见下面的代码);大部分对我来说都很清楚,但有一句话我不明白 if ((System.Object)p == null) 或者,在第二个覆盖中 if ((object)p == null) 为什么不简单 if (p == null) 我们的演员阵容是什么? public override bool Equals(System.Object obj) { // If parameter is null return false. if (obj == null)

C# 为什么建设者是邪恶的?

我记得我读过一篇关于构造函数是邪恶的(但无法放置它)的文章。作者提到构造函数是方法的一个特例;但是有限制(例如它们不能有返回值) 建设者是邪恶的吗?没有构造函数,而是依赖于像Initialize这样的方法,以及成员变量的默认值,这样更好吗 (如果必须确定一种语言,您的答案可以针对C#或Java。)构造函数允许初始化列表和其他有用的东西。没有复制构造函数,无法动态初始化数组中的对象(不使用指向对象的指针) 不,他们不是邪恶的 它们是特殊情况。它们不是。事实上,有一种称为控制反转的特定模式,它巧妙地

C# 使用反射创建在构建时未知的接口的模拟

对于我的ned结束测试,重要的是我的testassembly不预加载从属程序集的卷影副本 Assembly T是加载和测试程序集A的测试框架。 程序集A依赖于B中定义的接口 出于测试目的,我必须在构建期间替换中的一些静态成员,而不让它们可用 下面是一些伪代码,说明了我所处的困境: A_assembly = Assembly.LoadFrom("A.dll"); A_type = A_assembly.GetType("TheSingleton.Master", t

C# 使用EmguCV(OpenCV)求解共面点位姿估计

我在同一个平面上有4个点(一个平的正方形物体)在相机中检测到,我试图计算出这个正方形相对于相机的姿势 我使用的是EmguCV()的最新版本,它是OpenCV的C#包装器 我见过POSIT(),但这对共面点不起作用。我想知道是否有什么方法可以解决OpenCV中的共面姿态估计问题 我也看到了PNP 我相信它会满足我的需求,但我似乎在EmguCV中找不到这种功能 有人知道如何使用EmguCV解决这个问题吗?尽管在emgu中没有SolvePnP,但只要平面上至少有4个点对应,您仍然可以计算单应。如果您不

C# Weifenlo DockPanel套件是否仅适用于MDI环境?

我的观点是——正如我在Weifenlou DockPanel套件示例中看到的那样——这里只使用MDI环境 但是如果我想在子窗体内部使用停靠,可以吗?在示例应用程序中,您将看到可用的停靠模式之一是停靠窗口。此模式不使用内置的Windows MDI概念 要有多个停靠级别,您可以在主面板中的每个子文档上使用DockPanel,这是完全允许的 由于操作系统的限制,在这些多级场景中,您可能会遇到调整大小的问题。如果是,请在DockPanel上启用SupportDeeplyNestedContent属性

C# 在用户控件中设置ForegroundColor

我正在用WPF编写一个用户控件,这是我自己的第一个控件。 供您参考,我正在使用Telerik控件 我的用户控件只是一个网格,它只包含2个网格视图s。 现在我想让某人通过设置前景和背景来设计GridViews的样式 我是这样设定的: Background="{Binding ElementName=Grid, Path=DarkBackground}" Foreground="{Binding ElementName=Grid, Path=LightForeground}" 我的代码是: pub

C# windows窗体中的datagridview单元格编辑和保存功能?

我正在c#windows窗体应用程序中处理datagridview,我正在从数据库加载数据,现在我希望用户能够编辑单元格值并将值保存到数据库中,如何编辑单元格值以及如何将值保存到数据库中 SqlConnection con = new SqlConnection("user id=sa;password=123;database=employee"); SqlDataAdapter da = new SqlDataAdapter("select * from UserReg", con)

C# winform更改悬停按钮的BackgroundImage属性

我想更改悬停按钮的backgroundImage属性,如下所示: private void btnGetHardwareID_MouseEnter(object sender, EventArgs e) { btnGetHardwareID.BackgroundImage = (System.Drawing.Image)(Properties.Resources._11949847771696668271pill_button_green_benji__01_sv

C# 如何解析具有多个小数点的字符串

我想将一个字符串(如“10.0.20”)解析为一个数字,以便在C#net中比较另一个具有相同格式的字符串 例如,我会比较这两个数字,看看哪个比另一个小: 如果(10.0.30

C# DataTable连接所有数据行

实际上,我有一个数据表,包含2000行,列名为的电子邮件。 现在,我想显示来自数据表的所有电子邮件,并用,分隔,将它们添加到文本框 我通过for循环来实现这一点,但是,这需要很长时间 实际上,我已经用它来获取列名: string[] columnNames1 = (from dc in table.Columns.Cast<DataColumn>() select dc.ColumnName).ToArray(); s

如何使我的文本块在我的C#XAML Windows 8.1应用程序中的大小正确?

我是Windows8.1开发的新手,所以如果这个问题很明显或者是初步的,请原谅我。我已经尝试了很多不同的属性,但我不能让它按我想要的方式工作,所以我想也许这里有人可以帮我一下 对我正在做的事情的描述: 我制作了一个UserControl,这样我就可以为我要做的一件事隔离UI,也可以在真实UI的各个地方使用它。用户控件由一个按钮和一个网格组成。网格有3行的定义,我希望行(以及它们包含的边框元素和文本块元素)分别占行0、1和2总高度的20%、高度的60%和高度的20%。我还希望网格占据按钮的整个高度

C# 如何防止关闭窗口时应用程序关闭?

我使用的是WPF,没有主窗口(我覆盖了OnStartup方法)。但当用户单击某个菜单项时,我想显示设置窗口 App.xaml.cs: protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); new MainEnvironment(); } MainEnvironment.cs: NotifyIcon notifyIcon; Settings settings_wnd = new Se

C# 如何从ANTLR 4访问者报告错误?

我为布尔表达式创建了一个语法,现在我正试图实现visitor来计算它 有人告诉我们,没有必要通过语义分析使语法词法分析器和语法分析器规则过于复杂,因为更好的方法是提供来自访问者的有意义的错误消息 因此,我试图检查访问者中的类型一致性、日期正确性等。我感到惊讶的是,除了抛出异常之外,没有其他方法(至少我看不到)报告访问者的错误。如果我抛出一个异常,我将无法继续表达式验证并立即检测所有错误。此外,我必须以某种方式捕获所有解析异常类型(我应该如何知道它们?)。总之,异常抛出似乎不是正确的解决方案 您能

C# 循环遍历结果集MongoDB 3

我有一个C#应用程序,应该可以读写MongoDB 3数据库。不幸的是,在MongoDB3中,很多名称空间和方法都发生了变化,所以这有点挑战性 以下是我的代码: string connectionString = Settings.Default.MongoConnectionString; string databaseName = Settings.Default.MongoDatabaseName; var client = new Mong

如何确保对C#项目中的配置文件所做的更改会导致重新生成DLL?

我在Visual Studio 2015中有一个C#DLL项目(a),其中有一个自定义配置文件,我希望将其复制到输出,因此“复制到输出目录”设置为“如果更新,则复制”。此DLL被同一解决方案中的另一个项目(B)引用。每当我重建项目B时,项目A中的配置文件都会复制到它的输出目录,正如我所希望的那样 问题是,如果我只修改配置文件,它不会被复制到输出中。我认为这是因为项目A的输出没有更改,所以MSBuild不需要将其复制到项目B的输出目录中 我发现的一个解决方法是将配置文件的内容类型设置为“Embed

C# 为什么在.NET2.0中将null强制转换为基元(即:int)会引发null-ref异常,而不是无效的强制转换异常?

我在浏览一些代码时遇到了一个场景,其中我的组合框尚未初始化。这在.NET 2.0中,在以下代码中,This.cbRegion.SelectedValue为null int id = (int)this.cbRegion.SelectedValue; 此代码引发了null引用异常,而不是无效的强制转换异常。我想知道是否有人知道为什么它会抛出null引用异常而不是无效的强制转换?它正在尝试在强制转换之前读取对象。因此,您得到的是null异常,而不是强制转换异常。异常位于所选的null值上。它甚至连

C# 如何设置私有构造函数?

如果构造函数是私有的(.NET),如何设置单元测试 这是我的班级: public class Class2 { // Private constructor. private Class2() { } public static Class2 getInstance() { if (x == null) { x= new Class2(); } retur

C# 如何在强类型ASP.NET MVC创建和编辑视图的下拉列表中使用实体对象导航属性?

我有一个包含产品和系列类型的实体数据模型。每种产品都有一个系列 我将此模型用于ASP.NETMVC网站。我希望在我的产品控制器的“创建”和“编辑”视图上显示家庭下拉列表 如何在强类型ASP.NET MVC创建和编辑视图的下拉列表中使用实体对象导航属性 以下代码失败 产品控制器: // POST: /Product/Create [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create(Product p) { db.AddToPr

C# 德银赢得';t在架构更改后重新初始化为本地订阅服务器

首先,我将概述我的问题,以防有人有其他解决方案 问题是: 我有一个使用MergeReplication的winform应用程序。除了我需要对5个表中的列和主键进行更改外,这一切都很好。我从文章中删除了它们,然后进行了更改。然后我将它们重新添加到文章中,并将出版物设置为重新利用所有内容 不幸的是,这不起作用。当我运行订阅程序时,它会告诉我订阅无效 编辑1 我这里有一个修正/补充。我在复制监视器中遇到的实际错误如下--> 这似乎很重要,因为这意味着我的MergeRepl同步进程正在尝试重新初始化,但

C#和方法隐藏

根据MSDN,“new”关键字在用于方法隐藏时仅抑制警告 我真的需要这个“new”关键字来执行方法隐藏吗?如果我有一个子类,它有相同的方法名,但没有显式地声明它正在重写,这本质上不是同一件事吗,我只是得到一个警告?请告诉我我的理解是否正确。谢谢这是C#的一部分,就像ref和out一样。这样做的目的是警告您,您的API正在重写一个可能会影响依赖于类的子类/超类的代码的方法 放置新关键字会迫使您考虑这是否真的是您想要做的,就像要求ref或out那样,您必须考虑代码提供的契约。方法隐藏与重写不同。不

C# 确定二维数组是否包含元素的最快方法?

假设我有一个2d数组,比如: int[,] my_array = new int[100, 100]; 数组中填充了整数。检查数组中是否包含目标值元素的最快方法是什么 (*这不是家庭作业,我正在尝试为这种情况找到最有效的解决方案)如果数组没有以某种方式排序,我看不出有什么比使用两个for语句检查每个值更快的了。如果已排序,则可以使用二进制搜索 编辑: 如果您需要重复这样做,您的方法将取决于数据。如果此数组中的整数范围仅为256,则可以使用该长度的布尔数组,并通过翻转布尔数组中的位来遍历数据中的

C#多态性问题

我有一个BL类名为:a,DTO类名为:DTO。现在假设我想在DTO中添加更多属性。因此,我从现有DTO派生了一个新的DTO类,并向其添加属性。下面是代码: namespace TestConsole { class test { static void Main(string[] args) { B b = new B(); b.D.ID = 1; b.D.Name = "4

C# 在c语言中解析给定路径#

我有一个路径“C:\Users\TestProject\TestProject.csproj” 我想获取路径,直到“C:\Users\TestProject” 谢谢 string dir = System.IO.Path.GetDirectoryName(myPath); string fullFilename= @"C:\Users\TestProject\TestProject.csproj"; string folder = Path.GetDirectoryName(fullFil

C#比较浮点与整数

我在Intertube上看到了这段代码,用于确定Windows Mobile设备是否有VGA屏幕(代码位于Form类的方法中): 即使屏幕为VGA,是否可能因为浮点不精确(高度属性为浮点)而将isVGA设置为false?不在您当前的示例中,因为(符合IEEE 754,32位)浮点数。所以我想你的问题实际上是CurrentAutoScaleDimensions是否可以返回一个非整数的浮点值?答案不错!你直截了当地说了。如果我真的是偏执狂,我会担心我是否能保证每个人都会遵守这个标准。我想,假设每个人

C# 将单个或多个空间重新分配到%

我有像“First Last Name” 我想将空白替换为%like "First%Last%Name" 如何将连续空格替换为单个%?您可以使用正则表达式: str = Regex.Replace(str, " +", "%"); OP要求的是空格,而不是空格,因此“”正是他所需要的。正则表达式的“关键字”到底是什么? var result = string.Join("%", str.Split(new[] { ' ' }, StringSplitOptions.RemoveEmp

C# 创建基本C++。C中p/invoke的dll# 我是一个C程序员,不幸的是,由于年龄和经验,我没有机会在我的学习中通过编程的C++时代——其中有很多对我来说是神秘的和新的。我不是来讨论学习这些知识的重要性的,但我需要一些帮助来解决这件小事 问题 我需要帮助将我的C++代码打包成.dll。我没有C++经验,而且我在工作上有很大的困难。我可以从Visual Studio 2010中调用/调用DLL。请继续阅读更多的细节和我试图打包的代码 细节

我有一些代码需要在非托管环境中运行。在正常情况下,一个简单的p/invoke适用于此任务。连接一些[importdell]就可以开始了。最坏的情况下,我有时可以使用编组。然而,由于我尚未真正发现的原因,我目前的任务似乎不可能做到这一点 我试图从一个旧的非托管C++应用程序中编写的所有者绘制列表框中读取一些数据,并从中获取文本。我已经看到了几个如何做到这一点的例子,但它们都在旧的VB6代码中 我发现了C++等价物,但这对我也不合适。即使使用p/invoke,内存的移动以及它需要如何操作似乎也有很多

C# Selenium 2 StaleElementReferenceException在InternetExplorerDriver中使用DropDownList和AutoPostBack时出现异常

我使用Selenium 2使用InternetExplorerDriver测试asp.net web表单页面,遇到了StaleElementReferenceException。该页面包含一个(自动回发)下拉列表,我正在从中选择不同的值 示例代码: 第页: (代码隐藏文件只包含Visual Studio自动创建的内容。) 测试夹具代码: using NUnit.Framework; using OpenQA.Selenium; using OpenQA.Selenium.IE; names

C# 来自常量的WPF图像源

我有一些图标是我项目中的资源,我计划将这些图标用于菜单项和其他东西 我创建了一个constants类,将这些图标的位置保存在中心位置,而不是将它们硬编码到每个菜单项中 例如 如果我将此值硬编码到xaml中图像的源属性中,则效果良好。然而,如果我尝试引用这个常数,它就会失败 例如 它失败,出现以下异常:“无法将属性“Source”中的值转换为类型为“System.Windows.Media.ImageSource”的对象。” 这和我硬编码值有什么区别?有没有更好的方法在xaml中引用我的常量

在C#项目中,事件的常量应该放在哪里

我对C#非常陌生,我有一个关于传统的问题: 与事件关联的常量应存储在何处 它们是否应该包含在我定义EventArgs的同一位置 作为一种解释,我想为一个名为“_困难”的私有字段定义不同的常量,并通过重写的EventArgs类的构造函数来设置 假设常数是, 公共常数int易=0,中=1,硬=2;(我假设命名约定都是大写) 或者,我可以创建一个类似于“难易Constants”的类,然后将它们插入其中 我只是好奇这个约定是什么,对于遵循OOP最有意义。约定是不这样做的。您所描述的将按惯例实现为一组命名

为什么在C#中调用string.Select时会出现编译错误?

在另一个问题()中,他们对字符串调用Select方法。也表明这是可能的 然而,当我试图使用在这些地方找到的代码样本来实现这一点时,我得到了一个编译错误。是什么导致了这种情况,我如何在字符串上使用Select方法?这是一种LINQ方法 要使用它,您需要使用.Net 3.5或更高版本,已经引用了System.Core.dll,并且已经使用了System.Linq您确定已经包含System.Linq引用吗 使用System.Linq只需添加一个参考system.core.dll 1.在解决方案资源管理

C# 以优化的线程安全方式返回数字序列

我正在寻找一些关于编写线程安全、优化、优雅的代码以执行以下操作的建议: 我需要一个静态方法来返回整数序列。例如,应用程序启动时,线程1调用GetSequence方法,并表示希望取3,因此它返回一个由0,1,2组成的整数数组。线程2然后调用该方法并说给我4,所以它返回3,4,5,6。多个线程可以同时调用此方法 为了让大家知道我在想什么,下面是我的尝试: using System; using System.Collections.Generic; using System.Linq; using

C# RadGrid(Gridview)内的FindControl编辑和插入视图

我有一个RadGrid(Gridview),可以选择编辑和插入新项目 在这两个选项中,我都有一个customvalidator来检查现有的值,这样就不能输入重复的值。我一直关注的是对文本框使用findcontrol的功能,而文本框只在编辑和插入期间显示 当我调用GetInsertItem()时,这对INSERT非常有效,但在编辑时会抛出一个错误,我对此束手无策。我希望在数据绑定和命令方法之外执行此操作 protected void cvAccountNumber_ServerValidate(o

C# 在运行时C使用反射获取类实例的属性#

嗨,这就是我要做的,我有一个类(EventType),它可以是动态的,在不同的时间有不同的成员/属性 class EventType { int id{set;} string name{set;} DateTime date{set;} List<int> list{set;} Guid guid{set;} } class事件类型 { int-id{set;} 字符串名称{set;} 日期时间日期{set;} 列表{set;} Guid

C# JSON数据到剑道UI网格ASP.NET MVC 4

我在获取数据以显示在Kendo.Grid上有点困难 JSON是有效的,它在以文本形式单击链接时显示,但在网格中加载数据时显示 这里是来源,任何帮助将不胜感激 比尔。埃罗 控制器 public ActionResult Index([DataSourceRequest]DataSourceRequest request) { using (var db = new CimDataContext()) { IQueryable<

基于异步注释的C#Lambda表达式的执行

我试图找到下面的Execute(..)方法的一个优雅实现,它接受lambda表达式。我想做的事可能吗?看起来我应该能够,因为编译器将允许我传递这样一个lambda表达式(以动作的形式) 在给定这些规范的情况下,您将如何实现上面的Execute方法?您可以检查您所传递的委托下面的方法是否用-注释,但老实说,我不会。它只是自找麻烦,使用这样的实现细节 相反,我将有一个单独的ExecuteAsyncDelegate重载,它使用Func而不是操作。当然,您需要小心在该线程中执行的操作——您很可能不想仅仅

C# POST抛出HttpRequestMessage不包含表单的定义

我正在尝试用C#获取POST数据,我读到的所有内容都说明要使用 Request.Form["parameterNameHere"] 我正在尝试,但我得到一个错误,说 System.Net.Http.HttpRequestMessage不包含表单的定义,也不包含表单的扩展方法。' 所讨论的方法是 using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net

C# TPL数据流选择块将项目发布到其中

请看下面我的第三方物流数据流网络方案。 有一个URL列表、若干加载块和一个解析块。 加载块使用不同的代理服务器加载HTML页面,并且所有这些页面都链接到发生CPU绑定工作的解析块。若页面加载过程中出现异常,URL将添加回列表 我发布URL以手动循环加载块(在pic上)。 我的问题:是否有任何块类型,可以帮助选择加载块来发布URL,而不是我手工制作的循环?例如,它将使用.InputCount将URL发布到第一个加载时钟 是否有任何块类型,可以帮助选择加载块来发布URL,而不是我手工制作的循环?例如

C# 已禁用csproj的发布配置

为什么我不能更改下图中显示的这些设置? 这是一个clickOnce应用程序,我的问题是我想通过发布路径、程序集名称、产品名称、安装URL进行更改,并根据生成配置执行一些app.config翻译。我可以通过像这样手动编辑csproj来实现这一点 <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> <AssemblyName>someApplicationTest</AssemblyName&

C# 更新SpecFlow包后发生诱惑错误

我正在使用Specflow、C#和Allure编写测试以生成报告。更新包之后 Specflow Specflow.xUnit SpecFlow.Tools.MsBuild.Generation 从版本3.3.57到3.4.31 我得到这个错误: System.TypeInitializationException : The type initializer for 'Allure.SpecFlowPlugin.AllureTestTracerWrapper' threw an except