avalonia中使用EmBedIO构建静态文件服务

1.现在nuget中引入EmBedIO包;

2.在项目中创建wwwroot文件夹,并将html,js,css文件放到这个文件夹下,注意要将wwwroot文件下所有的文件属性全部设置为构建时始终复制,或者文件较新时复制,不然编译的时候,文件不会被编译;

3.实现方法

public void StartWebServer(){
    var basePath = AppDomain.CurrentDomain.BaseDirectory;//获取当前程序的根目录
    var wwwRootPath = Path.Combine(basePath,"wwwroot");
    Directory.CreateDirectory(wwwRootPath);
    var url = "http://localhost:8081/";//根据自己需要去调整端口
    var server = new WebServer(i=>i
    .withUrlPrefiex(url)
    .WithMode(HttpListenerMode.EmbedIO))
    .WithStaticFolder("/",wwwRootPath,true);//静态文件目录下的wwwroot文件
    //使用后台线程启动服务
    Task.Run(()=>server.RunAsync());
}

4.使用方法

        在启动文件中OnFrameWorkInitializationComPleted方法中调用,运行程序后就会启动服务;

        或在自己需要的地方调用;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值