zoukankan      html  css  js  c++  java
  • .NetCore学习笔记

    1、建立空的asp.net core Web应用程序,并且发布,发布的时候遇到,views文件里面的文件被打包成xxxx.view.dll,这时我不想让做好的页面打包成xxx.view.dll,.net core3.1的做法是

    第一、在web应用程序中安装NuGet包

    Install-Package Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation       ,我这里用的是版本是3.1.8

    在StartUp类方法 :

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddRazorPages()
            .AddRazorRuntimeCompilation();
    }

    执行AddRazorRuntimeCompilation();方法

    第二、点击  xx.csproj 在PropertyGroup节点中添加两个子节点如下:  

    <RazorCompileOnBuild>false</RazorCompileOnBuild>
    <RazorCompileOnPublish>false</RazorCompileOnPublish>
    <PropertyGroup>
        <TargetFramework>netcoreapp3.1</TargetFramework>
        <UserSecretsId>3fa99a4d-3c65-4a0d-bf98-4fdcc842f20a</UserSecretsId>
        <RazorCompileOnBuild>false</RazorCompileOnBuild>
        <RazorCompileOnPublish>false</RazorCompileOnPublish>
      </PropertyGroup>

    做到这两步,之后在该项目的文件目录下输入cmd, 执行命令dotnet build;   在执行命令dotnet publish; 发布的时候view或者page文件夹的文件就出现了

    参考资料:https://www.cnblogs.com/yyfh/archive/2020/02/27/12373249.html

    2、解决NetCore部署到Docker后不能使用Https的问题   :https://blog.csdn.net/li_sj/article/details/104144505

    3、.net core3.1 gRPC服务端与客户端共享.proto缓冲文件的做法

    1)在gRPC AServer端新建两个A.proto   B.proto  缓冲文件,然后将Protos文件夹拷贝的与.sln文件同目录下  然后右键点击 AServer项目--点击添加--点击服务引用见图

     点击添加

    下一步

    点击浏览,选择Protos文件夹的.proto文件

    点击完成

    此时我们的项目.csproj文件的配置就多了配置代码

    <ItemGroup>
        <Protobuf Include="..Protosgreet.proto" GrpcServices="Server" />
    </ItemGroup>

    如果我们添加多个.proto文件这里就会有多个配置代码,如果有几十个那.csproj文件里面就会有很多.proto的文件配置代码,看着不舒服,那么我们可以配置一个通用的路径不管添加多少个.proto文件.csproj文件都只是一个配置代码,请看:

    <ItemGroup>
        <Protobuf Include="..Protos*.proto" GrpcServices="Server" Link="Protos\%(RecursiveDir)%(Filename)%(Extension)" />
     </ItemGroup>

     MSBuild变量解释:

    **:所有子文件夹
    Include:包含所有文件夹的子文件。
    Exclude:除去.cs文件。
    %(RecursiveDir):目录结构
    %(Filename):文件
    %(Extension)扩展名

    请点击 MSBuild 常见的项元数据   了解更多MSBuild

    Protobuf3语言指南

     
  • 相关阅读:
    Yii2 的 updateAll 方法参数详解
    Yii2 数据库查询汇总
    Git常见报错
    git rebase篇
    在 Yii 2.0 上,使用 updateAll() 更新表列值为同一表的另一列值的实现
    Git从其他分支merge个别文件
    Git cherry-pick 复制多个commit
    Git 删除某次提交(某个commit)的方法
    多进程记录
    python3安装Crypto过程
  • 原文地址:https://www.cnblogs.com/axinno1/p/14031681.html
Copyright © 2011-2022 走看看