SqliteToOracle\global.json
| { |
| "sdk": { |
| "version": "7.0.401" |
| } |
| } |
SqliteToOracle\SqliteToOracle.sln
| |
| Microsoft Visual Studio Solution File, Format Version 12.00 |
| # Visual Studio Version 17 |
| VisualStudioVersion = 17.0.31903.59 |
| MinimumVisualStudioVersion = 10.0.40219.1 |
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SqliteToOracle.App", "SqliteToOracle.App\SqliteToOracle.App.csproj", "{F31078FC-6326-4CDA-AA8A-DB3AAF33D029}" |
| EndProject |
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SqliteToOracle.Oracle", "SqliteToOracle.Oracle\SqliteToOracle.Oracle.csproj", "{12650F95-B263-402B-A8AF-337DD82072F5}" |
| EndProject |
| Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SqliteToOracle.StandardBattery", "SqliteToOracle.StandardBattery\SqliteToOracle.StandardBattery.csproj", "{7298432C-9458-4360-A5FF-8938D5B76C01}" |
| EndProject |
| Global |
| GlobalSection(SolutionConfigurationPlatforms) = preSolution |
| Debug|Any CPU = Debug|Any CPU |
| Release|Any CPU = Release|Any CPU |
| EndGlobalSection |
| GlobalSection(SolutionProperties) = preSolution |
| HideSolutionNode = FALSE |
| EndGlobalSection |
| GlobalSection(ProjectConfigurationPlatforms) = postSolution |
| {F31078FC-6326-4CDA-AA8A-DB3AAF33D029}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| {F31078FC-6326-4CDA-AA8A-DB3AAF33D029}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| {F31078FC-6326-4CDA-AA8A-DB3AAF33D029}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| {F31078FC-6326-4CDA-AA8A-DB3AAF33D029}.Release|Any CPU.Build.0 = Release|Any CPU |
| {12650F95-B263-402B-A8AF-337DD82072F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| {12650F95-B263-402B-A8AF-337DD82072F5}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| {12650F95-B263-402B-A8AF-337DD82072F5}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| {12650F95-B263-402B-A8AF-337DD82072F5}.Release|Any CPU.Build.0 = Release|Any CPU |
| {7298432C-9458-4360-A5FF-8938D5B76C01}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| {7298432C-9458-4360-A5FF-8938D5B76C01}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| {7298432C-9458-4360-A5FF-8938D5B76C01}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| {7298432C-9458-4360-A5FF-8938D5B76C01}.Release|Any CPU.Build.0 = Release|Any CPU |
| EndGlobalSection |
| EndGlobal |
| |
SqliteToOracle\SqliteToOracle.App\Program.cs
| using SqliteToOracle.Oracle.Entities; |
| using SqliteToOracle.StandardBattery.StandardBatteryContext; |
| |
| var dbContextStandardBattery = new StandardBatteryContext(); |
| |
| |
| |
| await dbContextStandardBattery.Database.EnsureCreatedAsync(); |
| |
| var yesterday = DateTime.Today.AddDays(-1); |
| var yesterdayStart = yesterday; |
| var yesterdayEnd = yesterday.AddDays(1).AddSeconds(-1); |
| |
| var batteries = dbContextStandardBattery.Batteries |
| .Where(b => b.EndTime >= yesterdayStart && b.EndTime <= yesterdayEnd) |
| .ToList(); |
| |
| |
| foreach (var battery in batteries) |
| { |
| var batNew = new BatteryOracle { Ip = battery.Ip, Name = battery.Name, StartLevel = battery.StartLevel, StartVoltage = battery.StartVoltage, StartCycle = battery.StartCycle, StartTime = battery.StartTime, Charging = battery.Charging }; |
| break; |
| } |
| |
| |
| |
| |
| await dbContextStandardBattery.DisposeAsync(); |
| |
| |
| |
| |
| |
SqliteToOracle\SqliteToOracle.App\SqliteToOracle.App.csproj
| <Project Sdk="Microsoft.NET.Sdk"> |
| |
| <ItemGroup> |
| <ProjectReference Include="..\SqliteToOracle.Oracle\SqliteToOracle.Oracle.csproj" /> |
| <ProjectReference Include="..\SqliteToOracle.StandardBattery\SqliteToOracle.StandardBattery.csproj" /> |
| </ItemGroup> |
| |
| <PropertyGroup> |
| <OutputType>Exe</OutputType> |
| <TargetFramework>net7.0</TargetFramework> |
| <ImplicitUsings>enable</ImplicitUsings> |
| <Nullable>enable</Nullable> |
| <RestorePackagesPath>packages</RestorePackagesPath> |
| </PropertyGroup> |
| |
| </Project> |
| |
SqliteToOracle\SqliteToOracle.Oracle\OracleContext.cs
| using Microsoft.EntityFrameworkCore; |
| using SqliteToOracle.Oracle.Entities; |
| |
| |
| namespace SqliteToOracle.Oracle.StandardBatteryContext; |
| |
| public class OracleContext : DbContext |
| { |
| public DbSet<BatteryOracle> Batteries { get; set; } |
| |
| protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) |
| { |
| if (!optionsBuilder.IsConfigured) |
| { |
| |
| |
| |
| optionsBuilder.UseOracle( |
| "User Id=<username>;Password=<password>;Data Source=<host>/<port>", |
| b => b.UseOracleSQLCompatibility("11")); |
| } |
| } |
| protected override void OnModelCreating(ModelBuilder modelBuilder) |
| { |
| modelBuilder.Entity<BatteryOracle>().ToTable("STANDARD_BATTERY"); |
| } |
| } |
| |
| |
| |
| |
SqliteToOracle\SqliteToOracle.Oracle\SqliteToOracle.Oracle.csproj
| <Project Sdk="Microsoft.NET.Sdk"> |
| |
| <PropertyGroup> |
| <TargetFramework>net7.0</TargetFramework> |
| <ImplicitUsings>enable</ImplicitUsings> |
| <Nullable>enable</Nullable> |
| </PropertyGroup> |
| |
| <ItemGroup> |
| <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.4"> |
| <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
| <PrivateAssets>all</PrivateAssets> |
| </PackageReference> |
| <PackageReference Include="Oracle.EntityFrameworkCore" Version="7.21.13" /> |
| <PackageReference Include="Oracle.ManagedDataAccess.Core" Version="3.21.130" /> |
| </ItemGroup> |
| |
| </Project> |
| |
| |
SqliteToOracle\SqliteToOracle.Oracle\Entities\Battery.cs
| using System.ComponentModel.DataAnnotations; |
| using System.ComponentModel.DataAnnotations.Schema; |
| |
| |
| namespace SqliteToOracle.Oracle.Entities; |
| |
| public class BatteryOracle |
| { |
| |
| [Key] |
| [Column("ID")] |
| public Guid Id { get; set; } = Guid.NewGuid(); |
| |
| [Required] |
| [Column("IP", TypeName = "VARCHAR2(20)")] |
| public string? Ip { get; set; } |
| |
| [Column("NAME", TypeName = "VARCHAR2(20)")] |
| public string? Name { get; set; } |
| |
| [Column("START_LEVEL", TypeName = "FLOAT")] |
| public float? StartLevel { get; set; } |
| |
| [Column("END_LEVEL", TypeName = "FLOAT")] |
| public float? EndLevel { get; set; } |
| |
| [Column("START_TEMP", TypeName = "FLOAT")] |
| public float? StartTemp { get; set; } |
| |
| [Column("END_TEMP", TypeName = "FLOAT")] |
| public float? EndTemp { get; set; } |
| |
| [Column("START_VOLTAGE", TypeName = "FLOAT")] |
| public float? StartVoltage { get; set; } |
| |
| [Column("END_VOLTAGE", TypeName = "FLOAT")] |
| public float? EndVoltage { get; set; } |
| |
| [Column("START_CYCLE", TypeName = "NUMBER")] |
| public int? StartCycle { get; set; } |
| |
| [Column("END_CYCLE", TypeName = "NUMBER")] |
| public int? EndCycle { get; set; } |
| |
| [Column("START_TIME", TypeName = "DATE")] |
| public DateTime? StartTime { get; set; } |
| |
| [Column("END_TIME", TypeName = "DATE")] |
| public DateTime? EndTime { get; set; } |
| |
| [Column("DURATION", TypeName = "NUMBER")] |
| public int? Duration { get; set; } |
| |
| [Column("INTERRUPT", TypeName = "NUMBER")] |
| public int? Interrupt { get; set; } |
| |
| [Column("CHARGING", TypeName = "NUMBER")] |
| public bool Charging { get; set; } |
| |
| } |
| |
| |
| |
SqliteToOracle\SqliteToOracle.StandardBattery\SqliteToOracle.StandardBattery.csproj
| <Project Sdk="Microsoft.NET.Sdk"> |
| |
| <PropertyGroup> |
| <TargetFramework>net7.0</TargetFramework> |
| <ImplicitUsings>enable</ImplicitUsings> |
| <Nullable>enable</Nullable> |
| </PropertyGroup> |
| |
| <ItemGroup> |
| <PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.4" /> |
| <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.4"> |
| <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
| <PrivateAssets>all</PrivateAssets> |
| </PackageReference> |
| <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.4" /> |
| <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.4"> |
| <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
| <PrivateAssets>all</PrivateAssets> |
| </PackageReference> |
| </ItemGroup> |
| |
| </Project> |
| |
SqliteToOracle\SqliteToOracle.StandardBattery\StandardBatteryContext.cs
| using Microsoft.EntityFrameworkCore; |
| using SqliteToOracle.StandardBattery.Entities; |
| |
| |
| namespace SqliteToOracle.StandardBattery.StandardBatteryContext; |
| public class StandardBatteryContext : DbContext |
| { |
| public DbSet<Battery> Batteries { get; set; } |
| |
| protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) |
| { |
| if (!optionsBuilder.IsConfigured) |
| { |
| optionsBuilder.UseSqlite(@"Data Source=F:\song\dotnet_miniapi-main_learn\dotnet_miniapi-main\Dbs\Games.db"); |
| } |
| } |
| protected override void OnModelCreating(ModelBuilder modelBuilder) |
| { |
| modelBuilder.Entity<Battery>().ToTable("Batteries"); |
| } |
| } |
| |
| |
| |
| |
SqliteToOracle\SqliteToOracle.StandardBattery\Entities\Battery.cs
| using System.ComponentModel.DataAnnotations; |
| using System.ComponentModel.DataAnnotations.Schema; |
| |
| |
| namespace SqliteToOracle.StandardBattery.Entities; |
| |
| public class Battery |
| { |
| [Key] |
| [Column("id")] |
| public int Id { get; set; } |
| |
| [Required] |
| [Column("ip", TypeName = "varchar(20)")] |
| public required string Ip { get; set; } |
| |
| [Column("name", TypeName = "varchar(20)")] |
| public string? Name { get; set; } |
| |
| [Column("start_level", TypeName = "float")] |
| public float? StartLevel { get; set; } |
| |
| [Column("end_level", TypeName = "float")] |
| public float? EndLevel { get; set; } |
| |
| [Column("start_temp", TypeName = "float")] |
| public float? StartTemp { get; set; } |
| |
| [Column("end_temp", TypeName = "float")] |
| public float? EndTemp { get; set; } |
| |
| [Column("start_voltage", TypeName = "float")] |
| public float? StartVoltage { get; set; } |
| |
| [Column("end_voltage", TypeName = "float")] |
| public float? EndVoltage { get; set; } |
| |
| [Column("start_cycle", TypeName = "int")] |
| public int? StartCycle { get; set; } |
| |
| [Column("end_cycle", TypeName = "int")] |
| public int? EndCycle { get; set; } |
| |
| [Column("start_time", TypeName = "datetime")] |
| public DateTime? StartTime { get; set; } |
| |
| [Column("end_time", TypeName = "datetime")] |
| public DateTime? EndTime { get; set; } |
| |
| [Column("duration", TypeName = "int")] |
| public int? Duration { get; set; } |
| |
| [Column("interrupt", TypeName = "bit")] |
| public bool? Interrupt { get; set; } |
| |
| [Column("charging", TypeName = "bit")] |
| public bool Charging { get; set; } |
| |
| } |
| |
| |
cmd 命令记录导出
| doskey /history > history.txt |
当前项目的命令记录
| dotnet new globaljson |
| |
| dotnet new sln --output SqliteToOracle |
| cd SqliteToOracle |
| dotnet new console --name SqliteToOracle.App |
| dotnew sln list |
| dotnet sln add SqliteToOracle.App |
| dotnet sln list |
| |
| dotnet new list |
| dotnet new classlib --name SqliteToOracle.StandardBattery |
| |
| |
| dotnet new classlib --name SqliteToOracle.Oracle |
| dotnet sln list |
| |
| dotnet sln add SqliteToOracle.Oracle |
| dotnet sln add SqliteToOracle.StandardBattery |
| dotnet sln list |
| |
| dotnet add SqliteToOracle.App\SqliteToOracle.App.csproj reference SqliteToOracle.Oracle\SqliteToOracle.Oracle.csproj |
| dotnet add SqliteToOracle.App\SqliteToOracle.App.csproj reference SqliteToOracle.StandardBattery\SqliteToOracle.StandardBattery.csproj |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战