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跨平台 

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

     
  • 相关阅读:
    ubuntu11.04更改默认JDK
    10个实用的jQuery交互/通信插件和教程
    jquery 使用方法
    在没有安装 ASP.NET MVC3 的服务器上运行 MVC3
    固定 vs. 流动 vs. 弹性:哪种布局更适合你?[SM]
    提升设计品质的8种布局方案[SM]
    Ubuntu 手动安装JDK
    十个简单好用的设计技巧[SM]
    jQuery VSDoc下载地址
    Ubuntu 配置Apache+PHP+MySQL
  • 原文地址:https://www.cnblogs.com/maxzhang1985/p/5673108.html
Copyright © 2011-2022 走看看