csproj文件常用设置及C#注释常用写法

news/2024/7/3 2:23:31

csproj文件常用设置及C#注释常用写法

.NET新版SDK风格的csproj文件

打开可为空警告

<PropertyGroup>
  <Nullable>enable</Nullable>
</PropertyGroup>

image-20230629113946172

启动全局引用using

下图没有任何using,仍然不报错

image-20230629114640825

<PropertyGroup>
	<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>

这样会自动生成一个全局Using文件

image-20230629114906889

引用命名空间

可以将常用的命名空间引入

<ItemGroup>
	<Using Include="System.Text"/>
</ItemGroup>

使用Winform内容

有一些内容WPF中没有,需要引用Winform,如FolderBrowserDialog

<PropertyGroup>
	<UseWPF>true</UseWPF>
	<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>

设置语言

WPF生成后会出现很多与语言相关的翻译包,可以选择某一种语言进行设置

image-20230629115527991

<PropertyGroup>
	<SatelliteResourceLanguages>zh</SatelliteResourceLanguages>
</PropertyGroup>

Nuget包自动升级

将Version=“*”,不过不建议使用,可能会存在版本不兼容问题。

<ItemGroup>
	<PackageReference Include="CommunityToolkit.Mvvm" Version="*" />
</ItemGroup>

资源管理

有时候会增加很多资源,并且要设置资源复制到输出目录且设置生成操作

<ItemGroup>
    <!--可以用通配符来操作-->
  <Content Include="Assets\**\*.*"> 
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
  </Content>
</ItemGroup>

C#注释的写法

public partial class MainViewModel
{
    /// <summary>
    /// 这是一个测试方法,返回值为<see langword="object"/>类型
    /// 而且它是一个转换器<see cref="Type"/>
    /// </summary>
    /// <remarks>
    /// <para>
    /// 它接收一个<see langword="Object"/>类型,一个<see cref="Type"/>类型<br/>以及一个<see cref="CultureInfo"/>类型参数
    /// </para>
    /// </remarks>
    /// <param name="value">参数1</param>
    /// <param name="type">参数2</param>
    /// <param name="info">参数3</param>
    /// <returns>返回值</returns>
    /// <exception cref="NotImplementedException"></exception>
    public object Test(Object value, Type type, CultureInfo info)
    {
        throw new NotImplementedException();
    }
}

image-20230629134138416


http://lihuaxi.xjx100.cn/news/1292450.html

相关文章

vue加element-ui实现前端表格分页

如果不从后台请求数据&#xff0c;那么就需要在前端手动管理数据。可以使用以下步骤实现该功能&#xff1a; 在 Vue 组件的 data 中定义一个数组来存放所有数据&#xff08;不分页&#xff09;。 data() {return {allData: [], // 所有数据currentPage: 1, // 当前页数pageSi…

Java 引用传递

引用传递是 Java 中一个重要的概念&#xff0c;它与值传递不同&#xff0c;可以使得函数或方法可以修改传入的对象。本文将介绍 Java 中的引用传递&#xff0c;包括其定义、实现方式、与值传递的区别以及示例代码。 什么是引用传递 在 Java 中&#xff0c;变量可以存储基本类…

Character类(Java)

文章目录 1. 介绍2. 分析3. 方法3.1 isDigit()方法 --- isLetter()方法3.2 xxxx()方法3.2 xxxx()方法 1. 介绍 A. 类介绍&#xff1a;   Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。 2. 分析 A. 类包结构&#xff1a…

centos磁盘扩容

解释 PE - 物理块&#xff08;Physical Extent&#xff09; 硬盘上有很多实际物理存在的存储块PV - 物理卷 &#xff08;Physical Volume&#xff09; 物理卷处于最底层&#xff0c;它可以是实际物理硬盘上的分区&#xff0c;也可以是整个物理硬盘(相当于单独做一个分区)&…

Bokeh 绘图基础与常用功能

Reference | Getting started with Bokeh – Medium Post 在 Github 上查看交互式的绘图结果 | Bokeh 绘图入门 – Posted by Paradise 在这篇文章中&#xff0c;从最基本的绘图开始&#xff0c;逐步学习 Bokeh 中常用的绘图功能&#xff0c;目标是能满足大部分基础的绘图需求。…

关于在容器中,nignx代理后端多个服务如何保证后端服务的地址不变呢?

关于在容器中&#xff0c;nignx代理后端多个服务如何保证后端服务的地址不变呢&#xff1f; 有什么方法 第一种 如果你的后端服务的IP地址不会随着每一次的版本迭代而发生变化&#xff0c;那么就相当于host network 第二种 如果你的后端服务的IP地址每次都会发生变化 &#xf…

新品预告——旗舰级DG4Pros最详技术解析及应用方案介绍

旗舰级DG4Pros RIY-DG4Pros是目前睿铂性能指标最高的一款全画幅倾斜摄影相机&#xff0c;其核心光学组件部分由睿铂结合多年来的用户反馈与对倾斜摄影技术的探索成果&#xff0c;完全自主研发设计&#xff0c;技术水平领先于市面同类产品。相机镜头内置双高斯结构和超低色散非…

【JavaWeb】Cookie和Session的使用场景

一、Cookie 简介 Cookie —— 浏览器提供的一种持久化存储的机制。 为什么有浏览器需要给用户提供Cookie 这种持久化存储呢&#xff0c;直接存硬盘不好吗&#xff0c;换而言之 Cookie机制到底是个啥&#xff1f;&#xff1f;&#xff1f; 早期浏览器为了避免用户访问恶意网…