master
杨威 7 months ago
parent 159f9c3561
commit 1670b32ad6

@ -1,6 +1,6 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SynPlc", "SynPlc\SynPlc.csproj", "{495A640B-3209-4D8D-ACEC-3CAB9EE6CE37}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SynPlc", "SynPlc\SynPlc.csproj", "{6A385551-E95F-4578-B9D0-8C13A7ECBC97}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -8,9 +8,9 @@ Global
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{495A640B-3209-4D8D-ACEC-3CAB9EE6CE37}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{495A640B-3209-4D8D-ACEC-3CAB9EE6CE37}.Debug|Any CPU.Build.0 = Debug|Any CPU
{495A640B-3209-4D8D-ACEC-3CAB9EE6CE37}.Release|Any CPU.ActiveCfg = Release|Any CPU
{495A640B-3209-4D8D-ACEC-3CAB9EE6CE37}.Release|Any CPU.Build.0 = Release|Any CPU
{6A385551-E95F-4578-B9D0-8C13A7ECBC97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6A385551-E95F-4578-B9D0-8C13A7ECBC97}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6A385551-E95F-4578-B9D0-8C13A7ECBC97}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6A385551-E95F-4578-B9D0-8C13A7ECBC97}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

@ -1,3 +1,24 @@
// See https://aka.ms/new-console-template for more information
using NewLife.Extensions.Hosting.AgentService;
using SynPlc;
Console.WriteLine("Hello, World!");
// 授权示例 Authorization example
if (!HslCommunication.Authorization.SetAuthorizationCode("12a99167-05ff-4c89-936f-93d42033f882"))
{
Console.WriteLine( "Authorization failed! The current program can only be used for 8 hours!" );
return; // 激活失败应该退出系统
}
IHost host = Host.CreateDefaultBuilder(args)
.ConfigureServices(services =>
{
services.AddHostedService<Worker>();
})
.UseAgentService(options =>
{
options.ServiceName = "TestWorker";
options.DisplayName = "Worker服务测试";
options.Description = "Worker服务的测试应用";
})
.Build();
await host.RunAsync();

@ -0,0 +1,11 @@
{
"profiles": {
"SynPlc": {
"commandName": "Project",
"dotnetRunMessages": true,
"environmentVariables": {
"DOTNET_ENVIRONMENT": "Development"
}
}
}
}

@ -1,11 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk.Worker">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<LangVersion>12</LangVersion>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>dotnet-SynPlc-486627e3-08b3-4b04-97e3-7ebc131a9edf</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="HslCommunication" Version="12.0.3" />
<PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.1"/>
<PackageReference Include="NewLife.Extensions.Hosting.AgentService" Version="10.7.2024.801" />
<PackageReference Include="SqlSugarCore" Version="5.1.4.166" />
</ItemGroup>
</Project>

@ -0,0 +1,20 @@
namespace SynPlc;
public class Worker : BackgroundService
{
private readonly ILogger<Worker> _logger;
public Worker(ILogger<Worker> logger)
{
_logger = logger;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
while (!stoppingToken.IsCancellationRequested)
{
_logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
await Task.Delay(1000, stoppingToken);
}
}
}

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.Hosting.Lifetime": "Information"
}
}
}

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.Hosting.Lifetime": "Information"
}
}
}
Loading…
Cancel
Save