转自:http://blog.csdn.net/cngkqy/archive/2008/01/16/2047230.aspx
在C#程序中实现插件架构
转自:http://blog.csdn.net/cngkqy/archive/2008/01/16/2047230.aspx
private void Button1_Click(object sender, System.EventArgs e) { AuthHeader auth = new AuthHeader(); WebServices webService = new WebServices(); auth.UserName = this.txtName.Text.Trim(); auth.Password = this.txtPwd.Text.Trim(); webService.authHeader = auth; string rtStr = webService.GetPassword(); this.txtReturn.Text = rtStr; }
public class AuthHeader : SoapHeader { public string UserName; public string Password; }
public class WebServices : System.Web.Services.WebService { public AuthHeader authHeader; [SoapHeader("authHeader")] [WebMethod(Description = "This method will return the sensitive data")] public string GetPassword() { if (authHeader.UserName.Equals("user") && authHeader.Password.Equals("pwd")) { return "pwd"; } return "Invalid Authentication "; } }
System.Net.CookieContainer cookieContainer = new System.Net.CookieContainer(); MyService.WebService service = new App.MyService.WebService(); service.CookieContainer = cookieContainer;
<?xml version="1.0" encoding="utf-8"?> <configuration> <system.web> <compilation debug="false" /> <authentication mode="Forms"> <forms name="MyService" loginUrl="Login.asmx"></forms> </authentication> <authorization > <deny users="?" /> </authorization> </system.web> </configuration>
public bool Check(string userName, string password) { if (userName == "aaaaaa" && password == "123456")//添加验证逻辑 { System.Web.Security.FormsAuthentication.SetAuthCookie(userName, false); return true; } else { return false; } }
class Sample { System.Net.CookieContainer cookieContainer = new System.Net.CookieContainer(); public void Login() { MyServiceLogin.Login login = new App.MyServiceLogin.Login(); login.CookieContainer = cookieContainer; login.Check("aaaaaa", "123456"); } public void ShowHelloWorld() { MyService.WebService service = new App.MyService.WebService(); service.CookieContainer = cookieContainer; Console.WriteLine(service.HelloWorld()); } }
博易目前的 TroubleShooting 主要是通过用户交流群来做的。经过规划和考量,已打算把这部分工作转移到论坛上来。那么以后博易用户交流群仅用作用户之间的交流,而官方将把精力在论坛上去集中。这么做对博易的发展有一些好处。
A.内容归档,可追溯,减少重复的解答同样的问题。
B.内容共享范围扩大,原本仅在群内,而在论坛上的话可以扩大到所有Web浏览者。
C.交流可以异步。这么一来可以给双方都减轻工作负荷。
D.促使Web良性发展。论坛的帖子可以被搜索引擎收录,实现一个比较完备的Web的发展。
E.言论的所有权得以控制。
上面好处多多,是促使博易更好地发展的一个要素。不过也有不便之处,还请大家积极配合了。
background:orange;*background:blue;
background:green !important;background:blue;
background:orange; *background:green;
background:orange;*background:green !important;*background:blue;
群里面一位朋友提出了的,昨天测试了下,果然二级分类链接有问题。
回去之后修改好了,现在把改好的文件发出来给大家下载。
这个问题并不严重,如果你没有使用或者也不打算使用二级分类,可以不用下载。
这里是下载包,解压替换 App_CodeControls 下的相应文件即可。