Tag: .net

Simple Injector是否支持MVC 4 ASP.NET Web API?

我是Simple Injector IOC容器的新手。 我将开始在一个项目中工作,该项目需要使用MVC 4 ASP.NET Web API的多租户ASP.NET MVC实现。 我的问题是:Simple inject支持MVC 4 ASP.NET Web API吗? 阅读这样的简单注入器文档会引用MVC 3,我想知道MVC 4是否也受支持。

如何在运行时更新配置文件中的assemblyBinding部分?

我正在尝试动态更改程序集绑定(从一个版本到另一个版本)。 我试过这段代码,但它不起作用: Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); ConfigurationSection assemblyBindingSection = config.Sections[“assemblyBinding”]; assemblyBindingSection.SectionInformation.ConfigSource = “bindingConf.xml”; config.Save(ConfigurationSaveMode.Modified); ConfigurationManager.RefreshSection(“assemblyBinding”); with bindingConf.xml包含assemblyBinding部分配置。 那么可以在运行时更改此部分吗? 怎么做? 我有什么替代品?

检查端口是否打开

我似乎找不到任何告诉我路由器中的端口是否打开的东西。 这有可能吗? 我现在的代码似乎并没有真正起作用…… private void ScanPort() { string hostname = “localhost”; int portno = 9081; IPAddress ipa = (IPAddress) Dns.GetHostAddresses(hostname)[0]; try { System.Net.Sockets.Socket sock = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); sock.Connect(ipa, portno); if (sock.Connected == true) // Port is in use and connection is successful MessageBox.Show(“Port is Closed”); sock.Close(); } catch (System.Net.Sockets.SocketException ex) { if (ex.ErrorCode […]

LINQ to SQL类序列化时的循环引用exception

我有一组linq到sql类,并使用.NET JavaScriptSerializer将它们序列化为JSON。 但是,只要我将记录添加到关联表中,序列化就会抛出“循环引用exception”。 Aaarggh! 这里详细描述。 我有几个选择 将linq转换为sql类到没有关系的类,从而避免循环引用 通过归零关联来剪切循环引用 – 我不认为这是一个真正的选项 使用ScriptIgnoreAttribute(不知何故)。 我无法轻松应用它,因为属性在生成的类中,LINQ to SQL不会自动遵循伙伴类 使用JSON.NET并以某种方式使用属性+伙伴类来阻止序列化程序尝试跨越关系。 有人遇到过这种情况么? 如果可能,我真的更喜欢最后一个选项,但我不知道该怎么做。 任何帮助是极大的赞赏

InvokeMember(“click”)webBrowser帮助

我试图通过weBrowser自动化一个网页,我试图点击的按钮没有ID只有一个值。 这是它的html代码: Accept 我不能使用GetElementById因为按钮没有ID。 如果我做 HtmlElement goButton = this.webBrowser1.Document.All[“Accept”]; goButton.InvokeMember(“click”); 我的脚本停止显示空引用错误,突出显示“goButton.InvokeMember(”click“);” 如果我做 var inputControls = (from HtmlElement element in webBrowser1.Document.GetElementsByTagName(“input”) select element).ToList(); HtmlElement submitButton = inputControls.First(x => x.Name == “Accept”); 我的脚本在“HtmlElement submitButton”行给出了一个“Sequence contains no matching element”错误,有时页面上有多个这样的Accept按钮,所以我需要能够分辨出每个按钮之间的区别或者至少能够在没有脚本破坏的情况下点击一个 任何有关这方面的帮助将不胜感激

C#在Windows启动时运行应用程序MINIMIZED

我得到以下代码在Windows启动时运行应用程序: private void SetStartup(string AppName, bool enable) { string runKey = “SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run”; Microsoft.Win32.RegistryKey startupKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(runKey); if (enable) { if (startupKey.GetValue(AppName) == null) { startupKey.Close(); startupKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(runKey, true); startupKey.SetValue(AppName, Application.ExecutablePath.ToString()); startupKey.Close(); } } else { startupKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(runKey, true); startupKey.DeleteValue(AppName, false); startupKey.Close(); } } 有用。 但我想让程序最小化(仅在Windows启动时)。 我没有找到工作代码/很好的解释如何做到这一点。 你能帮我吗? 谢谢。

WPF应用程序退出代码

我正在尝试设置并获取应用程序退出代码。 我正在尝试做以下事情: protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); if ( e.Args.Length != 0) { } else { new MainWindow().ShowDialog(); } Environment.ExitCode = 110; this.Shutdown(); } 然后我尝试在cmd中通过echo %ERRORLEVEL%来获取它 但我总是得到结果0 ,任何想法是什么问题?

在C#中更改控制台窗口中的字体

我有一个用C#编写的程序,它使用Raster字体中不可用的字符。 所以我想将字体改为Lucida Console。 若要以编程方式更改Console字体,我使用此代码的SetCurrentConsoleFontEx()(源: MSDN控制台类 )但我在调用SetCurrentConsoleFontEx()时遇到System.AccessViolationException。 谁能帮助我? 谢谢你的帮助。 using System; using System.Linq; using System.Runtime.InteropServices; namespace ConsoleExtender { public static class ConsoleHelper { [StructLayout(LayoutKind.Sequential)] internal unsafe struct CONSOLE_FONT_INFO_EX { internal uint cbSize; internal uint nFont; internal COORD dwFontSize; internal int FontFamily; internal int FontWeight; internal fixed char FaceName[LF_FACESIZE]; } [StructLayout(LayoutKind.Sequential)] internal struct COORD { internal short […]

在Enterprise Library中更改运行时的连接字符串

有没有办法在运行时更改Enterprise Library中的DataBase对象的连接字符串? 我找到了这个链接,但它有点过时(2005) 我也发现了这个,但它似乎一般适用于.Net,我想知道是否有一些东西可以专门为EntLib完成。 我只是将连接字符串名称传递给DatabaseFactory对象中的CreateDatabase()方法,直到昨天我的项目经理要求我支持多个数据库实例。 碰巧我们必须为每个状态设置一个数据库(一个用于CA,一个用于FL等),因此我的软件需要遍历所有数据库并对数据执行某些操作,但它将使用相同的配置文件。 提前致谢。

为什么我不能绑定到WPF中的类上的字段而不是绑定到属性

看来,在WPF中,我无法绑定到对象上的公共字段,而只能绑定到公共属性。 这是WPF的故意设计决定,还是我只是弄错了语法? 这是一个示例代码段: public class User { public string Username; public string FullName; public string DisplayName { get { return FullName; } } } WPF片段: 如果我将绑定路径更改为用户名或FullName,屏幕上不会显示任何内容。 是否有替代语法绑定到字段,或仅绑定属性?