【问题标题】:How do I enable BSON serialization in my ASP.NET Core Web API?如何在我的 ASP.NET Core Web API 中启用 BSON 序列化?
【发布时间】:2017-08-30 10:00:54
【问题描述】:

我是 ASP.NET Core 和一般网络编程的新手。我刚刚成功完成了我的第一个基于 RESTfull 设计原则的 ASP.NET Core Web API。它目前使用 JSON 序列化来发送响应(Visual Studio 默认),但我想尝试 BSON。我花了一天时间在谷歌上搜索,似乎找不到任何关于如何向服务器添加 BSON 序列化/反序列化功能的示例。我遇到了几篇关于如何在全框架 ASP.NET 上执行此操作的文章,其中包含开箱即用的内容已有好几年了(例如:https://docs.microsoft.com/en-us/aspnet/web-api/overview/formats-and-model-binding/bson-support-in-web-api-21http://www.strathweb.com/2012/07/bson-binary-json-and-how-your-web-api-can-be-even-faster/),但与此无关特别是 ASP.NET Core。

我搜索了 VS 生成的源代码文件,希望能找到与我链接的全框架示例类似的东西,但没有什么能引起我的注意,因为它们几乎没有相似之处。有人可以发布(或链接到)一些代码来说明这是如何在 ASP.NET Core 中完成的吗?非常感谢您提前。

【问题讨论】:

    标签: asp.net-core bson


    【解决方案1】:

    您可以使用此格式化程序:https://github.com/WebApiContrib/WebAPIContrib.Core

    然后在startup.cs处添加:

    using WebApiContrib.Core.Formatter.Bson;
    
    namespace MyApp
    {
        public class Startup
        {
            public void ConfigureServices(IServiceCollection services)
            {
                services.AddMvc()
                    .AddBsonSerializerFormatters();
            }
        }
    }
    

    【讨论】:

    • 非常感谢您。但是,我很惊讶地看到为此需要安装另一个模块化包。 ASP.NET Core 不支持开箱即用的 BSON 序列化吗?还是这是对 .NET Core 的“官方”BSON 支持?
    • .net core 2.0 将支持 BinaryFormatter:github.com/dotnet/corefx/pull/10144
    • @FabriDamazio 2.0 已经发布,那么现在BinaryFormatter 如何启用 BSON?
    • @HappyNomad 也许你可以在这里找到一些东西:docs.microsoft.com/en-us/dotnet/standard/serialization/…
    • @FabriDamazio 谢谢,看起来很有趣。但至少在我的情况下,二进制序列化不是 BSON 的替代品。
    猜你喜欢
    • 2019-03-16
    • 1970-01-01
    • 1970-01-01
    • 2019-02-11
    • 2014-04-27
    • 2022-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-11-30
    相关资源
    最近更新 更多