使用ac#winforms app启动owin
创建了一个启动配置文件
[assembly: OwinStartup(typeof(Chatter.Host.Startup))]
namespace Chatter.Host
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
// Any connection or hub wire up and configuration should go here
app.MapSignalR();
}
}
Run Code Online (Sandbox Code Playgroud)
然后在我的窗体上:
private void StartServer()
{
try
{
SignalR = WebApp.Start(URL);
}
catch (TargetInvocationException)
{
//Todo
}
this.Invoke((Action) (() => richTextBox1.AppendText("Server running on " + URL)));
Run Code Online (Sandbox Code Playgroud)
我如何停止\重新启动OWIN服务,例如会很棒?
private void StopServer()
{
try
{
//STOP!!
}
catch (TargetInvocationException)
{
}
}
Run Code Online (Sandbox Code Playgroud)
WebApp.Start()应该返回一个可以保留的IDisposable对象,并在以后要停止服务器时进行处理.您需要进行适当的安全检查/异常处理,但一个简单的例子是:
private IDisposable myServer;
public void Start() {
myServer = WebApp.Start(URL);
}
public void Stop() {
myServer.Dispose();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4894 次 |
| 最近记录: |