当前位置: 首页 > news >正文

什么是基于文件的应用

环境要求

得安装 .NET 10 SDK 才能使用基于文件的应用功能。可以通过下面的命令来检查 .net 版本:

dotnet --version

这里应该显示10.0.0或更高版本。

上示例

示例1:date-checker.cs使用标准库的应用

var targetDate = DateTime.Now;
Console.WriteLine("当前时间是: " + targetDate);
Console.WriteLine("当前日期是今年的第 {0} 天", targetDate.DayOfYear);

示例2:sales-data-analyse.cs依赖第三方库的应用

#:property PublishAot=false
#:package CsvHelper@33.0.1
using CsvHelper;
using System.Text.Json;
using System.Globalization;
var json = await File.ReadAllTextAsync("sales_data.json");
var sales = JsonSerializer.Deserialize<List<SaleRecord>>(json);
var topProducts = sales.GroupBy(s => s.Product)
.Select(g => new
{
Product = g.Key,
TotalAmount = g.Sum(s => s.Amount)
})
.OrderByDescending(g => g.TotalAmount)
.Take(10)
.ToList();
using var writer = new StreamWriter("top_products.csv");
using var csv = new CsvWriter(writer, CultureInfo.InvariantCulture);
csv.WriteRecords(topProducts);
Console.WriteLine("报告生成成功");
record SaleRecord(string Product, decimal Amount, DateTime Date);

分别使用下面的命令运行这两个示例:

dotnet run .\date-checker.cs
dotnet run .\sales-data-analyse.cs

常用指令

要去使用#:开头的指令来配置包、sdk、编译选项。

使用#:sdk指令来选择 SDK

默认的SDKMicrosoft.NET.Sdk,如果需要使用Microsoft.NET.Sdk.Web来构建 web 应用,可以使用下面的指令:

#:sdk "Microsoft.NET.Sdk.Web"

使用#:package指令来引入第三方库

#:package CsvHelper@33.0.1
#:package CsvHelper@*
#:package CsvHelper@33.*

上面三个版本分别表示使用指定版本、最新版本和指定主版本的库。

使用#:property指令设置编译选项

编译属性就是csproj文件中的属性,可以使用#:property指令来设置:

#:property LangVersion=preview
#:property Nullable=disable
#:property PublishAot=false
#:property TargetFramework=net10.0

使用#:reference指令来引用本地程序集

#:reference "path/to/your/library.dll"

使用#:project指令来引用本地项目

#:project "path/to/your/project.csproj"

CLI 支持

下面是一些支持基于文件的应用的 CLI 命令:

  • dotnet run <file.cs>:运行指定的.cs文件。
  • dotnet build <file.cs>:构建指定的.cs文件。
  • dotnet publish <file.cs>:发布指定的.cs文件。
  • dotnet pack <file.cs>:打包指定的.cs文件。
  • dotnet project convert <file.cs>:转换指定的.cs文件为一个完整的项目。
  • dotnet restore <file.cs>:还原指定的.cs文件中引用的包。
  • dotnet clean <file.cs>:清理指定的.cs文件生成的输出。
  • dotnet run <file.cs> -- <args>:运行指定的.cs文件,并传递额外的命令行参数。
http://www.jsqmd.com/news/1080558/

相关文章:

  • 南宁青秀区跑了几家店,这家体验最舒服
  • AI编排实战:MuleSoft+LangChain双引擎企业级集成指南
  • 空中交通终端区进场排序优化:FOFFS与CPS策略的实时性能对比分析
  • 虚拟机DNS解析失败:systemd-resolved与127.0.0.53:53错误深度解析
  • AI文本分块实战指南:16种生产级策略与避坑方法
  • Python 异步爬虫限速方案
  • 前端组件库设计实现指南
  • Spielman猜想:正则图成立与一般图反例的谱图论解析
  • 专业视频对比工具全面指南:高效分析视频质量差异的终极方案
  • Python量化交易数据获取终极指南:用efinance轻松搞定四大金融市场数据
  • 直击痛点型:PLM、ERP、MES买齐了,但你的智能制造真的100%落地了吗?
  • 基于Spdlog + Qt的日志显示框架设计与实现
  • 快速掌握Apache Spark:从入门到实战的完整指南
  • VMware与Hyper-V冲突排查手册(2024版):从设备管理器异常驱动到WDDM GPU虚拟化抢占,覆盖12类真实产线案例
  • 3分钟完成FF14国际服中文汉化:开源工具让语言不再是障碍
  • Windows/Linux双Guest系统音频失同步问题,20年VMware认证架构师首次公开vSphere 8.0音频时钟校准参数表
  • 为什么92.6%的VMware密码重置操作导致系统崩溃?——基于137例真实故障日志的根因分析与避坑清单
  • P89LPC980定时器/PWM与低功耗电源管理实战详解
  • 终极解决G Helper CPU功耗限制失效:从驱动修复到代码级优化的完整指南
  • 3分钟快速免费提取Word文档中的Zotero和Mendeley引用:终极解决方案
  • Paperxie AI PPT 生成器:全场景文稿一键转演示文稿,打通内容创作与版式设计全流程
  • Kazumi视频播放器:揭秘智能进度条预览与高效播放体验的实现之道
  • 【企业级Linux开发沙箱构建手册】:基于VMware Workstation Pro 17的隔离、快照、克隆三重保障方案
  • VMware快照滥用导致磁盘爆炸?资深工程师披露3种安全快照策略,避免项目中断超2小时
  • 终极指南:5分钟掌握GHelper - 华硕笔记本性能调校的完整解决方案
  • 音视频直播技术解析
  • YOLO26-seg分割全网首发:CVPR2026 WDAM小波方向注意力+C2PSA,频域高频引导低频暗区复原,小目标检测精度跃升!
  • 如何掌握华硕笔记本性能调优:G-Helper从入门到精通完全指南
  • 银行流水公证怎么办?银行流水公证需要什么资料?
  • 财务运营基础任务智能助手推荐与选择指南