如何注册所有类型的接口并统一获取它们的实例?

Unity如何获取接口的所有实例然后访问它们? 代码片段取自此处: 失败跟踪器 在StrcutureMap中,可以从程序集中注册所有类型的接口,然后访问它们,如下所示: public class TaskRegistry : Registry { public TaskRegistry() { Scan(scan => { scan.AssembliesFromApplicationBaseDirectory( a => a.FullName.StartsWith(“FailTracker”)); scan.AddAllTypesOf(); scan.AddAllTypesOf(); scan.AddAllTypesOf(); scan.AddAllTypesOf(); scan.AddAllTypesOf(); }); } } ObjectFactory.Configure(cfg => { cfg.AddRegistry(new TaskRegistry()); }); 然后访问实现这些接口的所有类型,如: using (var container = ObjectFactory.Container.GetNestedContainer()) { foreach (var task in container.GetAllInstances()) { task.Execute(); } foreach (var task in container.GetAllInstances()) { […]

在C / C中将.PNG转换为.ICO#

我想将.PNG文件转换为.ICO文件。 我想在本地做任何互联网依赖(所以我不能使用像converttoico.com等在线工具)。 我发现了一个名为png2ico的奇妙工具,但它有一个限制,它只能将大小为1X1的图像转换为256X256。 虽然目前我正在修改PNG分辨率(在C#中)并将其压缩到256X256,然后使用此工具将其转换为图标,但图像质量并不好。 有没有人知道任何本地图书馆这样做或任何可以帮助我的工具(免费或付费)? 谢谢。

ASP Web Api – IoC – 解析HttpRequestMessage

我正在尝试使用ASP.NET WebAPI设置Castle Windsor。 我也在使用Hyprlinkr包( https://github.com/ploeh/Hyprlinkr ),因此需要将HttpRequestMessage的实例注入到我的控制器的一个依赖项中。 我正在关注Mark Seemann的这篇文章 – http://blog.ploeh.dk/2012/04/19/WiringHttpControllerContextWithCastleWindsor.aspx ,但我发现尽管API运行,但当我调用它时,请求只是挂起。 没有错误消息。 就像它处于一个无限循环中一样。 它停留在我的Custom ControllerActivator调用Resolve上 我想我的一些城堡注册错了。 如果我删除上面文章中提到的那些,那么我可以成功调用API(虽然没有我需要解决的依赖项) 有任何想法吗? 代码如下 //Global.asax public class WebApiApplication : HttpApplication { private readonly IWindsorContainer container; public WebApiApplication() { container = new WindsorContainer( new DefaultKernel( new InlineDependenciesPropagatingDependencyResolver(), new DefaultProxyFactory()), new DefaultComponentInstaller()); container.Install(new DependencyInstaller()); } protected void Application_Start() { GlobalConfiguration.Configuration.Services.Replace(typeof(IHttpControllerActivator), new WindsorCompositionRoot(this.container)); […]

隐式方法组转换问题(第2部分)

从这个问题简化并摆脱了LinqPad的可能影响(没有密集),这样一个简单的控制台应用程序: public class Program { static void M() { } static void Main(string[] args) { Action a = new Action(M); Delegate b = new Action(M); Console.WriteLine(a == b); //got False here Console.Read(); } } “false”结果来自上面代码的CIL中的运算符ceq (有关详细信息,请访问原始问题)。 所以我的问题是: (1)为什么==正在转换为ceq而不是call Delegate Equals ? 在这里,我不关心Delegate和Action之间的(un)包装。 最后,在评估a == b ,a是Action类型,而b是Delegate 。 从规格: 7.3.4二元运算符重载决策 forms为x op y的操作,其中op是可重载的二元运算符,x是类型X的表达式,y是类型Y的表达式,按如下方式处理: •确定由操作运算符op(x,y)的X和Y提供的候选用户定义运算符集。 该集合由X提供的候选运算符与Y提供的候选运算符的并集组成,每个运算符使用§7.3.5的规则确定。 如果X和Y是相同的类型,或者如果X和Y是从公共基类型派生的,则共享候选运算符仅出现在组合集中一次。 […]

使用PostSharp在c#中使用构造函数的方面

我正在研究PostSharp中的各种概念。 更新: 这是我的程序类 namespace myconstructor { class Program { static void Main(string[] args) { createfolder(); streamfolder(); } public static void createfolder() { File.Create(“E:/samplefile.txt”); } public static void streamfolder() { StreamWriter sw = new StreamWriter(“E:/samplestream.txt”); } } } 和我的方面课一样 1)一些跟踪方面类: using System; using System.Collections.Generic; using System.Linq; using System.Text; using PostSharp.Extensibility; using PostSharp.Aspects.Dependencies; using PostSharp.Aspects; using PostSharp.Aspects.Advices; […]

使用C#驱动程序为MongoDB进行多字段查询

我无法弄清楚我想要完成的语法。 如上所述,我正在使用MongoDB的C#驱动程序。 我有一个用户实体定义为 [BsonIgnoreExtraElements] public class User : MongoEntity { [BsonElement] public string Username { get; set; } [BsonElement] public string Password { get; set; } [BsonElement] public string Email { get; set; } } 我还有一个UserService类,它对我的​​mongo数据库中的User集合执行操作。 下面是我如何创建一个真正的简单登录示例的示例。 public UserPresentation Login(string username, string password) { var entityQuery = Query.EQ(e => e.Username, username.ToUpper()); var entity = this.MongoConnectionHandler.MongoCollection.FindOne(entityQuery); […]

HttpModule – 获取HTML内容或控件以进行修改

试过这样的事情: HttpApplication app = s as HttpApplication; //s is sender of the OnBeginRequest event System.Web.UI.Page p = (System.Web.UI.Page)app.Context.Handler; System.Web.UI.WebControls.Label lbl = new System.Web.UI.WebControls.Label(); lbl.Text = “TEST TEST TEST”; p.Controls.Add(lbl); 运行时,我得到“对象引用未设置为对象的实例”。 最后一行…… 如何在原始文件中的特定loactions处插入两行文本(asp.net/html)? 我怎么弄清楚文件的扩展名(我只想在aspx文件上应用这个…?

动态创建基类的类型和调用构造函数

我需要动态创建一个类。 大多数工作正常,但我坚持生成构造函数。 AssemblyBuilder _assemblyBuilder = AppDomain.CurrentDomain.DefineDynamicAssembly(new AssemblyName(“MyBuilder”), AssemblyBuilderAccess.Run); ModuleBuilder _moduleBuilder = _assemblyBuilder.DefineDynamicModule(“MyModule”); public static object GetInstance(this TSource source, string eventName) where TSource : class { var typeName = “MyTypeName”; var typeBuilder = _moduleBuilder.DefineType(typeName, TypeAttributes.Class | TypeAttributes.Public); // create type like class MyClass : GenericType var baseNotGenericType = typeof(GenericType); var baseType = baseNotGenericType.MakeGenericType(typeBuilder, typeof(TSource), typeof(TEventArgs)); typeBuilder.SetParent(baseType); […]

以静默方式打印报表服务器端

我正在尝试编写一个程序,允许我从服务器端代码打印ssrs报告(.rdl文件)到预定的打印机,而没有任何弹出窗口询问我想要使用哪台打印机可以这样做吗?

WinForms – 这是保存一些数据最简单的方法吗?

刚刚构建我的第一个WinForms应用程序。 问题 – 在使用应用程序之间保存一些数据的最简单/最好的方法是什么(例如,在这种情况下,URL的状态和日期/时间列表)? 我认为不需要数据库。 例如*只是最简单地存储到文本文件? *或者像在DotNet中一样容易存储到XML文件* Windows注册表怎么样?这通常是要避免的吗? 它是否适用于包括Windows 7 *数据库在内的所有版本 – 在这里可能过度使用*也许是一个广泛使用的库? 谢谢