zoukankan      html  css  js  c++  java
  • .NET Core第三方开源Web框架YOYOFx

    YOYOFx框架

    YOYOFx是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台。

    本着学习的态度,造了这个轮子,也是为了更好的了解各个框架的原理和有点,还希望可以和大家多交流 。

    GitHub:https://github.com/maxzhang1985/YOYOFx

    YOYOFx是支持Owin协议的MVC框架,基于NETStandard1.6和NET451编译,完美支持在Core和full framework(如.net framework 4.5x或mono 4.x)上的运行。

    YOYOFx集成了dotnet core上“第一款”验证码组件,验证码的实现在以前的文章里提过,《【干货】”首个“ .NET Core 验证码组件 》。

    特性: YOYOFx的Mvc是基于Owin跑在Core的Web框架 , YOYOFx并没有基于Asp.Net Core MVC进行开发,而选择了使用Owin协议自己来封装Http协议的方式。

    跨平台特性:

    • .NET framework 4.5x和Mono4.x上直接SelfHost或使用Tinyfox跨平台运行;
    • .NET Core 1.0 RTM 实现跨平台运行;
    • 使用Tinyfox独立版,可支持绿色部署,不需要安装Mono和Framework。
    • 通过dotnet publish将Core版本进行打包后,可支持绿色部署,不需要运行时。

    Owin与Core

    YOYOFx的Http实现都是基于Owin协议的,并提供两个独立版本NETSTANDRD1.x和NET45x版本。

    目前完成:

    1. 封装Owin协议的HttpContext(IOwinContext),包括Request、Response、Http Headers、Cookie等;
    2. 路由机制,通过添加自定义路由表为框架添加处理事件;
    3. 基于IOwinContext的MVC框架,支持多语言扩展;支持Session和自定义的Action拦截器;
    4. 可替换的视图引擎,目前实现Razor视图引擎,加入了缓存机制;
    5. 已移植到dotnet core 1.0 RTM版本

    接下来的工作:

    1. 将项目的目录结构整合到dotnet core的项目文件中。 (已完成)
    2. 完成框架整体的DI,将框架级依赖对象全部通过依赖注入的方式构建和对象创建工厂;首先完成Controller的创建工厂。 (已完成)
    3. 完善路由系统 (进行中)
      • 支持方法特性[HttpGet] [HttpPost] 等定义路由。
      • 支持自定义路由路径。
      • 支持为路由规则指定特定的Handler处理函数。

    YOYOFx还非常不完善,只完成了最基本的功能,不过我会坚持写下去,坚持开源,为开源社区做那么一点点的贡献。

    GitHub:https://github.com/maxzhang1985/YOYOFx  Star下, 欢迎一起交流。

     .NET Core 和 YOYOFx 的交流群: 214741894 .NET Core跨平台 

    如果你觉得本文对你有帮助,请点击“推荐”,谢谢。

     
  • 相关阅读:
    Jquery ajax异步传值的两个实用的方法,你看后肯定会用第二个
    C# ASP.NET 转换为int型的方法 很实用
    NetCore 发送邮件
    解决Visual Studio For Mac Restore失败的问题
    (转)JSONObject的toBean 和 fromObject
    javax.servlet不存在的问题
    关于范式的解说
    在远程连接mysql数据库出现问题怎么办
    (二)SpringCloud学习系列-SpringCloud
    (一)SpringCloud学习系列-微服务
  • 原文地址:https://www.cnblogs.com/maxzhang1985/p/5673108.html
Copyright © 2011-2022 走看看