如何仅搜索和替换完全匹配的字符串

我需要搜索一个字符串并替换某个字符串 例如:搜索字符串“将附加字符串添加到文本框”。 将“添加”替换为“插入” 输出预期=“将附加字符串插入文本框” 如果使用string s =“Add Additional String to text box”.replace(“Add”,“Insert”); 输出结果=“将插入字符串插入文本框” 有没有人有想法让这个工作给出预期的输出? 谢谢!

让autofac与mvc6 beta5一起使用

我正在尝试使用我正在处理的mvc6应用程序使用autofac。 我发现这篇博客文章似乎有点过时了。 它看起来像使用beta3位 我正在使用这个clr版本 1.0.0-beta5-11911 我的项目有这两个参考 “Autofac”: “4.0.0-alpha2”, “Autofac.Dnx”: “4.0.0-alpha2”, 在文章中讨论了如何修改startup.cs // Create the Autofac container builder. var builder = new Autofac.ContainerBuilder(); // Add any Autofac modules or registrations. builder.RegisterModule(new AutofacModule()); // Populate the services. builder.Populate(services); // Build the container. var container = builder.Build(); return container.Resolve(); 上面的代码抱怨builder.Populate(services); 给我一个错误 “IServiceDescriptor”类型在未引用的程序集中定义。 您必须添加对程序集“Microsoft.Framework.DependencyInjection.IServiceDescriptor,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = […]

使用.NET远程读取事件日志

我想阅读远程计算机上的事件日志,以检查测试期间的错误。 这是一些相关的代码: public bool CheckEventLogs(DateTime start) { EventLog myEventLog = new EventLog(“CustomLog”, “ServerName”); bool errorFound = false; foreach (EventLogEntry entry in myEventLog.Entries) { if (entry.EntryType == EventLogEntryType.Error && entry.TimeGenerated >= start) { Console.WriteLine(“Error in Event Log:\n” + entry.Message + “\n”); errorFound = true; } } return errorFound; } 目前,此代码抛出exception(尝试执行未经授权的操作)。 根据MSDN ,我需要EventLogPermission,但我一直在努力寻找如何使用此权限的任何示例。 有没有人有一个如何做到这一点的例子? 编辑:对评论的回应 感谢大家的评论 – […]

根据值选中或取消选中复选框?

我们如何根据值以编程方式选中或取消选中复选框? 也就是说,对于特定用户,如果值为true,则应选中复选框,否则如果值为false,则需要取消选中该复选框。 我按以下方式声明了复选框:

使用SUM和ORDER BY进行Linq查询

我有一个名为Hit的(C#)类,带有ItemID(int)和Score(int)属性。 我跳过其余的细节来保持简短。 现在在我的代码中,我有一个巨大的List,我需要做以下select(进入一个新的List):我需要获得每个Hit.ItemID的所有Hit.Score的总和,按Score排序。 所以,如果我在原始列表中有以下项目 ItemID=3, Score=5 ItemID=1, Score=5 ItemID=2, Score=5 ItemID=3, Score=1 ItemID=1, Score=8 ItemID=2, Score=10 结果列表应包含以下内容: ItemID=2, Score=15 ItemID=1, Score=13 ItemID=3, Score=6 有人可以帮忙吗?

如何使用PC扬声器发出哔哔声?

我想用C#中的PC扬声器发出哔哔声。 使用以下代码时: [DllImport(“kernel32.dll”, EntryPoint = “Beep”, SetLastError = true, ExactSpelling = true)] public static extern bool Beep(uint frequency, uint duration); static void Main() { while (true) { Beep(1000, 500); Thread.Sleep(2000); } } 它不是通过PC扬声器发出哔哔声,而是简单地将给定频率和持续时间的声音输出到默认声音设备(例如耳机)。 使用Console.Beep()时会发生同样的事情。 为什么? 笔记: PC扬声器已打开。 当我启动电脑时,它会发出哔哔声。 操作系统是Windows 8。

C#和Razor – 未提供您请求的页面类型,因为它已被明确禁止。 扩展名“.cshtml”可能不正确

我查看了其他post,但似乎没有人回答我的需要。 我在WebMatrix(ASP.NET)中创建了一个空站点 我在VWD 2013中打开了该网站 我点击了F5,它在http://local.com:59833/ContentPage.cshtml等url上运行正常 我转到http://local.com/cscsu_bi/ContentPage.cshtml ,它不适用于下面的错误 ‘/’应用程序中的服务器错误。 不提供此类页面。 描述:未提供您请求的页面类型,因为它已被明确禁止。 扩展名“.cshtml”可能不正确。 请查看下面的url,确保拼写正确。 请求的URL:/cscsu_bi/ContentPage.cshtml web.config文件如下 我在Windows 7上。有什么明显的我做错了吗? 谢谢

无法从generics类型转换为接口

我在尝试将通用对象添加到List 时遇到错误。 它可能与Covariance和Contravariance有关,但我不知道如何解决这个问题。 我试图用T:IRegister来限制我的generics类型。 我有一个接口来表示一个寄存器,然后是两个代表ByteRegister和DoubleWordRegister的类。 public interface IRegister { string Name {get;set;} } public class ByteRegister : IRegister { … } public class DoubleWordRegister : IRegister { … } 然后,我有另一个类,它代表了所有相同类型的这些寄存器的块。 public class RegisterBlock where T:IRegister { private IList _registers; … constructors, properties etc public void AddRegister(T register) { _registers.Add(register); } } 最后我有一个RegisterMap类,用于定义寄存器块列表和块内的每个寄存器。 public class RegisterMap […]

Rx扩展:Parallel.ForEach在哪里?

我有一段使用Parallel.ForEach的代码,可能基于旧版本的Rx扩展或任务并行库。 我安装了当前版本的Rx扩展,但找不到Parallel.ForEach 。 我没有使用该库的任何其他花哨的东西,只是想像这样并行处理一些数据: Parallel.ForEach(records, ProcessRecord); 我发现了这个问题 ,但我不想依赖旧版本的Rx。 但是我无法为Rx找到类似的东西,那么使用当前Rx版本的当前和最直接的方法是什么? 该项目使用的是.NET 3.5。

“asp-format”未应用于标记助手

我在mvc 6项目中使用带有taghelper元素的“asp-format”标签时遇到了问题。 我们的想法是以这种方式格式化日期输入元素: 这个“StartDate”属性在我的模型中,以这种方式声明: public DateTime StartDate {get; set; } 出于一个奇怪的原因,这个元素永远不会被格式化,并且总是这样呈现: —> 02/29/2016 00:00:00 所以我创建了一个viewmodel类并定义了一个属性来保存整个人模型。 public class PersonViewModel { public Person Johndoe {get; set; } } 在视图中使用此类,格式化工作。 —> 29/02/2016