使用XPath和WebBrowser Control选择多个节点

在C#WinForms示例应用程序中,我使用了WebBrowser控件和JavaScript-XPath来选择单个节点,并通过以下代码更改该节点.innerHtml: private void MainForm_Load(object sender, EventArgs e) { webBrowser1.DocumentText = @” Product Details Paperback: 648 pages Publisher: Wiley; Unlimited Edition edition (October 15, 2001) Language: English ISBN-10: 0764547763 “; } private void cmdTest_Click(object sender, EventArgs e) { string xPath = “//li”; string code = string.Format(“document.evaluate(‘{0}’, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;”, xPath); var li = webBrowser1.Document.InvokeScript(“eval”, new […]

将.json文件加载到c#程序中

我是c#和json对象的新手,我正在尝试将我的网站从基于xml的配置文件移动到基​​于json的配置文件。 有没有办法加载.json文件,以便它变成对象? 我一直在网上搜索,我找不到一个。 我已经将xml文件转换并保存为.json。 我宁愿不使用第三方库。

从ASP.NET C#启动一个程序

我有一个程序(我创建),我想在网页加载时在服务器上启动它。 这是我的代码 public partial class _Default : System.Web.UI.Page { Process app = new Process(); protected void Page_Load(object sender, EventArgs e) { app.StartInfo.FileName = @”D:/Path to /My/Program to be run.exe”; app.Start(); } } 现在应用程序“运行”但它立即崩溃。 如果我只是运行应用程序(通过双击exe)它运行,一切都很好。 有谁看到我在这里遗失了什么?

Visual Studio 2008 – 将构建时的文件移动到bin /

编辑:这是一个用C#编写的VS2008应用程序。 所以我的解决方案中有一个名为的文件夹 _lib/ 这是我保存我的DLL的地方,以便当我引用它们时,它们会内置到bin/文件夹中。 现在我的解决方案中有一个新项目。 它是一个DLL但不应该是引用(它是第三方应用程序所必需的)。 所以在构建时我希望将它从_lib/复制到bin/但是在项目中没有引用。 我在我的应用程序中包含了_lib/文件夹,并且我选择的DLL的属性总是复制。 这个ALMOST有效,它用文件夹复制文件,所以我的结构如下: /bin/_lib/thedll.dll 代替 /bin/thedll.dll 有任何想法吗?

为什么C#没有C ++风格的静态库?

最近我一直在研究一些共享一些常见代码的小.NET应用程序。 代码中引入了一些接口来抽象出用于unit testing的I / O调用。 我希望应用程序是独立的EXE,没有外部依赖性。 这似乎是静态库的完美用例。 想想第三方控制供应商也可以从这个模型中受益。 我错过了一些隐藏的静态库吗? 有没有理由让C#设计师把它们排除在外? 编辑:我知道ILMerge,但它不提供与静态库相同的便利。

DataGridView编辑列名称

有没有办法在DataGridView中编辑列名?

在C#中检查两个List 列表是否相等的最佳方法是什么?

有很多方法可以做到这一点,但我觉得我错过了一个function或其他东西。 显然List == List将使用Object.Equals()并返回false 。 如果列表中的每个元素都相等并且出现在相反列表中的相同位置,那么我认为它们是相等的。 我正在使用值类型,但正确实现的Data对象应该以相同的方式工作(即我不是在寻找浅复制列表,只是内部每个对象的值相同)。 我尝试过搜索,也有类似的问题,但我的问题是每个元素都是按照确切的顺序相等。

带有entity framework的强类型ASP.NET MVC

此代码无法实际保存任何更改: // // POST: /SomeType/Edit/5 [AcceptVerbs(HttpVerbs.Post)] public ActionResult Edit(Guid id, SomeType Model) { db.AttachTo(Model.GetType().Name, Model); db.ApplyPropertyChanges(Model.EntityKey.EntitySetName, Model); db.SaveChanges(); return RedirectToAction(“Index”); } ASP.NET MVC将对象Model创建为Department类型EntityObject,其EntityState值为Detached 。 使用AttachTo方法后,其EntityState变为Unchanged 。 附加对象的MSDN(entity framework) 对象以Unchanged状态附加到对象上下文。 由于其Unchanged状态, ApplyPropertyChanges方法不执行任何操作。 我想让它改为状态。 关于EntityState枚举的MSDN 超脱 该对象存在但对象服务未对其进行跟踪。 在创建实体并将其添加到对象上下文之前,实体立即处于此状态。 通过调用Detach方法或使用NoTrackingMergeOption加载实体后,实体也处于此状态。 不变 该对象尚未被修改,因为它已加载到上下文中或自上次调用SaveChanges方法以来。 改性 对象已更改,但尚未调用SaveChanges方法。 我无法将EntityObject的EntityState属性显式设置为Modified 。 它是只读的。 使用EntityObjects的强类型MVC控制器是不是不可能?

如何使类可迭代?

这是我的class级 public class csWordSimilarity { public int irColumn1 = 0; public int irColumn2 = 0; public int irColumn3 = 0; public int irColumn4 = 0; public int irColumn5 = 0; } 我想使该类可迭代使用,如下所示 foreach (int irVal in myVarWordSimilarity) { } myVarWordSimilarity是csWordSimilarity类型。 所以我想迭代所有公共int变量。 我如何修改csWordSimilarity类以使其像上面的方式一样进行迭代。

要解密的数据长度无效

我正在尝试使用RijndaelManaged通过套接字加密和解密文件流,但我一直在碰到exception CryptographicException:要解密的数据长度无效。 在System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte [] inputBuffer,Int32 inputOffset,Int32 inputCount) 在System.Security.Cryptography.CryptoStream.FlushFinalBlock() 在System.Security.Cryptography.CryptoStream.Dispose(布尔处理) 当整个文件被传输时,在receiveFile中的using语句结束时抛出exception。 我尝试在网上搜索,但只找到了在加密和解密单个字符串时使用编码时出现的问题的答案。 我使用FileStream,所以我没有指定要使用的任何编码,所以这不应该是问题。 这些是我的方法: private void transferFile(FileInfo file, long position, long readBytes) { // transfer on socket stream Stream stream = new FileStream(file.FullName, FileMode.Open); if (position > 0) { stream.Seek(position, SeekOrigin.Begin); } // if this should be encrypted, wrap the encryptor stream if (UseCipher) { stream […]