I have a solution with some projects. One of this projects is the one I\'ve defined as main, also his class has a main Method.
Inside this class, I\'ve defined some
@Manu,
It is possible through reflection. The following is the solution to your problem.
You have created 2 projects
Project B -- having namespace "Net", class "HttpHandler"
Project A -- having namespace "cobra", static class "Program" and having reference of Project B
Now your problem is you need to access the class "Program" in Project B without giving reference of Project A to Project B because then the solution will not build as it will give cyclic reference error.
Check out the following
Project A
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Net; namespace Cobra { public static class Program { public static int A { get; set; }//Getter/Setter is important else "GetProperties" will not be able to detect it public static int B { get; set; } static void Main(string[] args) { HttpHandler obj = new HttpHandler(); obj.ProcessRequest(typeof(Program)); } } }
Project B
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; namespace Net { public class HttpHandler : IHttpHandler { public void ProcessRequest(Type cobraType) { int a, b; foreach (var item in cobraType.GetProperties(BindingFlags.Public | BindingFlags.Static | BindingFlags.FlattenHierarchy)) { if (item.Name == "A") a = (int)item.GetValue(null, null);//Since it is a static class pass null else if (item.Name == "B") b = (int)item.GetValue(null, null); } } } }
Hope this is of some help.
Regards,
Samar