为什么这个HtmlAgilityPack操作在确实存在匹配元素时无效?

我使用以下代码获取“InvalidOperationException> Message = Sequence不包含匹配元素”: private void buttonLoadHTML_Click(object sender, EventArgs e) { GetParagraphsListFromHtml(@”C:\PlatypiRUs\fitt.html”); } // This code adapted from Kirk Woll’s answer at http://stackoverflow.com/questions/4752840/html-agility-pack-c-sharp-paragraph- parsing-problem public List GetParagraphsListFromHtml(string sourceHtml) { var pars = new List(); HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); doc.LoadHtml(sourceHtml); foreach (var par in doc.DocumentNode .DescendantNodes() .Single(x => x.Id == “body”) .DescendantNodes() .Where(x => x.Name […]

在Azure Web角色中禁用IIS空闲超时

为防止AppPool每20分钟回收一次,我想在Azure Web角色启动时删除IIS AppPool空闲超时。 我的网站是一个Web应用程序项目。 我该怎么做呢?

将2个数据表合并到1个具有相同行数的数据表中。

如何将两个数据表合并到同一行。 我使用不同的存储过程将数据导入数据集。 在使用c#的asp.net中,我想合并它们,因此与表1的行数相同,表2中添加了一列。 例如: DataTable table1 = dsnew.Tables[0]; DataTable table2 = dsSpotsLeft.Tables[0]; table1.Merge(table2); 这是取4行而不是2行。 我在这里缺少什么? 提前致谢!!

如何以编程方式更改Windows桌面墙纸?

我希望使用C#为Windows XP设置壁纸。 我已经开发了代码,因此它在Windows 7中完美运行,但显然它与XP不同。 我将壁纸添加为资源,将其编译操作设置为内容并始终复制。 奇怪的是,它在桌面属性对话框中设置了正确的墙纸名称。 但是,壁纸未设置。 我的代码如下所示: public sealed class Wallpaper { Wallpaper() { } const int SPI_SETDESKWALLPAPER = 20; const int SPIF_UPDATEINIFILE = 0x01; const int SPIF_SENDWININICHANGE = 0x02; [DllImport(“user32.dll”, CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); public enum Style : int { Tiled, Centered, Stretched […]

如何等待有条件的任务?

我有一些任务返回一个布尔。 我只想等到任何任务首先返回True时。 可能吗 ? 我的第一个想法是使用CancellationTokenSource,但它不是一个好主意,因为它在我调用Task.WaitAll方法时抛出exception。 第二个选项是使用我在参考中传递的bool,如果是,则直接返回。 它有效,但它不是高效的: bool isFound = false; Task t0 = Task.Factory.StartNew(() => Find(paramA, paramB, ref isFound)); Task t1 = Task.Factory.StartNew(() => Find(paramC, paramD, ref isFound)); Task t2 = Task.Factory.StartNew(() => Find(paramE, paramF, ref isFound)); Task t3 = Task.Factory.StartNew(() => Find(paramG, paramH, ref isFound)); Task.WaitAll(new Task[] { t0, t1, t2, t3, t4 […]

添加/删除具有相同引用名称的控件

当用户点击按钮时,我在一个接一个的面板上添加控件。 控件在面板上依次显示。 当面板已满(例如10)时,添加的下一个控件必须替换添加的第一个控件,但首先我需要删除第一个控件….问题是所有正在创建的控件都具有相同的引用例如“pic”,现在当我使用panel1.Controls.Remove(pic)它没有指定需要删除第一个位置的控件!! int index = 0; if (util.GetSize() != 10) { ms.Controls.Add(musNote); } else { ms.Controls.Add(musNote); //this to replace first musNote added… but before I need to remove the musNote that in that position already (problem all of the are musNote!! index++; if (index == 10) { index = 0; } } musNote.ShowNote(); 以上不是整个代码,但应足以解决问题..如果有任何信息。 […]

由于不区分大小写的URL和默认值,我如何避免ASP.NET MVC中的重复内容?

编辑 :现在我需要真正解决这个问题,我做了一些调查,并想出了一些减少重复内容的东西。 我在我的博客上发布了详细的代码示例: 使用ASP.NET MVC减少重复内容 第一篇文章 – 如果我标记错误或标记错误,请轻松一下:P 在Microsoft的新ASP.NET MVC框架中,似乎有两件事可能导致您的内容在多个URL上提供(Google会惩罚这些内容并导致您的PageRank在其中分割): 不区分大小写的URL 默认url 您可以设置默认控制器/操作以满足对域根目录的请求。 假设我们选择HomeController / Index。 我们最终提供以下提供相同内容的url: mydomain.com/ mydomain.com/Home/Index 现在,如果人们开始链接到这两者,那么PageRank将被拆分。 谷歌也会认为它是重复的内容,并惩罚其中一个内容,以避免其结果重复。 除此之外,URL不区分大小写,因此我们实际上也为这些URL获取了相同的内容: mydomain.com/Home/Index mydomain.com/home/index mydomain.com/Home/index mydomain.com/home/Index (列表还在继续) 所以,问题是……我如何避免这些处罚? 我想要: 所有将默认操作的请求重定向(301状态)到同一个URL 所有URL都区分大小写 可能?

如何将List项目选择器添加到ListBox

我目前正在开发Windows Phone 8应用程序,我有一个带有TextBlock的ListBox,边框作为背景,当我点击列表框中的项目时,没有任何迹象表明用户他选择了该项目,如何添加所选的项目颜色? 而且我还需要在ListBox中选择多个项目,选择项目时应该更改其背景颜色。 以下是我的代码:

设置属性时获取StackOverflowException

public List ListarEmpleados() { List returnList = new List(); var lista = from u in DB.tabEmpleado select new { u.idEmpleado, u.idUsuario, u.Nombre, u.Apellidos, u.Telefono1 }; foreach (var e in lista) { Empleado empleado = new Empleado(); empleado.idEmpleado = e.idEmpleado; empleado.idUsuario = e.idUsuario; empleado.nombre = e.Nombre; empleado.apellidos = e.Apellidos; empleado.telefono1 = e.Telefono1; returnList.Add(empleado); } return returnList; […]

可选参数必须出现在c#中的所有必需参数之后

方法1 public List GetIndentsByStatus(string projectAddress, string jobAddress, string currentStatus,string ddlevent) { List indentItems =null; indentItems = GetIndentFilledInfo(filterdReports, false,null ,ddlevent); return indentItems; } 方法2 public List GetIndentFilledInfo(List surveyFeedbacks, bool hasupdate, string indentType = null,string ddlevent) { } 从Method1我调用第二个方法,在method2中基于EventID我将获取数据。 但它显示编译器错误消息: CS1737:可选参数必须出现在所有必需参数之后。