refactor: change folder structure

This commit is contained in:
2025-07-18 13:02:13 +03:30
parent 835f833927
commit 3c05411a29
1329 changed files with 116 additions and 38 deletions
@@ -0,0 +1,10 @@
namespace MyLibrary
{
public class Address
{
public string Street { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Pincode { get; set; }
}
}
@@ -0,0 +1,8 @@
namespace MyLibrary
{
public class Book
{
public string Title { get; set; }
public string Author { get; set; }
}
}
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyLibrary
{
public class Bookshelf
{
public int ShelfNumber { get; set; }
public List<Book> Books { get; set; } = new List<Book>();
public void AddBook(Book book)
{
Books.Add(book);
}
}
}
@@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Diagnostics.Metrics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyLibrary
{
public class Librarian : Person
{
public void IssueBook(Member member, Book book)
{
Console.WriteLine($"{Name} (Librarian) issued '{book.Title}' to {member.Name}.");
}
public override string Introduce()
{
return "Hi, I am " + Name + ", a librarian";
}
}
}
@@ -0,0 +1,9 @@
namespace MyLibrary
{
public class LibraryCard
{
public int CardNumber { get; set; }
public DateTime IssuedDate { get; set; }
}
}
@@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
namespace MyLibrary
{
public class Member : Person
{
public LibraryCard Card { get; set; } // Association with LibraryCard
public Address MemberAddress { get; set; } // Aggregation with Address
}
}
@@ -0,0 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
@@ -0,0 +1,31 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.7.34202.233
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyLibrary", "MyLibrary.csproj", "{12F2D842-8045-4D93-A469-8B06A0D5559F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OOP", "..\OOP\OOP.csproj", "{9A590ABE-59A5-4975-8B21-9BEA59741152}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{12F2D842-8045-4D93-A469-8B06A0D5559F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{12F2D842-8045-4D93-A469-8B06A0D5559F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{12F2D842-8045-4D93-A469-8B06A0D5559F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{12F2D842-8045-4D93-A469-8B06A0D5559F}.Release|Any CPU.Build.0 = Release|Any CPU
{9A590ABE-59A5-4975-8B21-9BEA59741152}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9A590ABE-59A5-4975-8B21-9BEA59741152}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9A590ABE-59A5-4975-8B21-9BEA59741152}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9A590ABE-59A5-4975-8B21-9BEA59741152}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {36C3F571-B6A6-4525-84BD-09E66A8D5C1F}
EndGlobalSection
EndGlobal
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyLibrary
{
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public virtual string Introduce()
{
return "Hi, I am " + Name;
}
}
}
@@ -0,0 +1,54 @@
using MyLibrary;
using System;
class Program
{
static void Main(string[] args)
{
// Create Library
TheLibrary library = new TheLibrary("Central Library");
// Create Bookshelf and Books
Bookshelf shelf1 = new Bookshelf { ShelfNumber = 1 };
shelf1.AddBook(new Book { Title = "C# Programming", Author = "John Doe" });
shelf1.AddBook(new Book { Title = "Data Structures", Author = "Jane Smith" });
// Add Bookshelf to Library (Composition)
library.AddBookshelf(shelf1);
// Display Library Info
library.DisplayLibraryInfo();
// Create Member with Aggregated Address
Address memberAddress = new Address
{
Street = "123 Main St",
City = "Metropolis",
State = "NY",
Pincode = "10001"
};
Member member = new Member
{
Name = "Alice",
Age = 25,
MemberAddress = memberAddress,
Card = new LibraryCard { CardNumber = 101, IssuedDate = DateTime.Now }
};
// Create Librarian
Librarian librarian = new Librarian
{
Name = "Mr. Smith",
Age = 40
};
// Issue Book (Association)
Book selectedBook = shelf1.Books[0]; // Select the first book on the shelf
librarian.IssueBook(member, selectedBook);
// Display Member Info and Address
Console.WriteLine($"Member Info:\nName: {member.Name}\nAddress: {member.MemberAddress.Street}, {member.MemberAddress.City}");
Console.ReadLine();
}
}
@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyLibrary
{
public class TheLibrary
{
public string LibraryName { get; set; }
public List<Bookshelf> Bookshelves { get; set; }
public TheLibrary(string libraryName)
{
LibraryName = libraryName;
Bookshelves = new List<Bookshelf>();
}
public void AddBookshelf(Bookshelf shelf)
{
Bookshelves.Add(shelf);
}
public void DisplayLibraryInfo()
{
Console.WriteLine($"Welcome to {LibraryName} Library!");
Console.WriteLine($"We have {Bookshelves.Count} bookshelves.");
}
}
}
@@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"Library/1.0.0": {
"runtime": {
"Library.dll": {}
}
}
}
},
"libraries": {
"Library/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -0,0 +1,9 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
@@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"MyLibrary/1.0.0": {
"runtime": {
"MyLibrary.dll": {}
}
}
}
},
"libraries": {
"MyLibrary/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -0,0 +1,9 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Library")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Library")]
[assembly: System.Reflection.AssemblyTitleAttribute("Library")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
fb2eba9fa42b6f00d2b7411ee66aa552bd02f626
@@ -0,0 +1,11 @@
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Library
build_property.ProjectDir = E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
@@ -0,0 +1 @@
32f07070cde6cad9997d34ff00059d068687fb77
@@ -0,0 +1,14 @@
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\Library.exe
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\Library.deps.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\Library.runtimeconfig.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\Library.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\Library.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.GeneratedMSBuildEditorConfig.editorconfig
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.AssemblyInfoInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.AssemblyInfo.cs
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.csproj.CoreCompileInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\refint\Library.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\Library.genruntimeconfig.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\ref\Library.dll
@@ -0,0 +1 @@
f1f2aaf8b369e446659195584ad59d60d4db00ea
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("MyLibrary")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("MyLibrary")]
[assembly: System.Reflection.AssemblyTitleAttribute("MyLibrary")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
537debc4a62bbc4947e614ba4a1c9b75bfb5c8a8
@@ -0,0 +1,11 @@
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = MyLibrary
build_property.ProjectDir = E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
@@ -0,0 +1 @@
6d003daf00efbd03aa363bce48b6a6067ce69006
@@ -0,0 +1,14 @@
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.GeneratedMSBuildEditorConfig.editorconfig
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.AssemblyInfoInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.AssemblyInfo.cs
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.csproj.CoreCompileInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\MyLibrary.exe
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\MyLibrary.deps.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\MyLibrary.runtimeconfig.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\MyLibrary.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\bin\Debug\net6.0\MyLibrary.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\refint\MyLibrary.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\MyLibrary.genruntimeconfig.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\Library\obj\Debug\net6.0\ref\MyLibrary.dll
@@ -0,0 +1 @@
f1f2aaf8b369e446659195584ad59d60d4db00ea
@@ -0,0 +1,68 @@
{
"format": 1,
"restore": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\Library.csproj": {}
},
"projects": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\Library.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\Library.csproj",
"projectName": "Library",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\Library.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\LENOVO\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.402\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\LENOVO\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.7.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\LENOVO\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
@@ -0,0 +1,68 @@
{
"format": 1,
"restore": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj": {}
},
"projects": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj",
"projectName": "MyLibrary",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\LENOVO\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.402\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\LENOVO\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.7.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\LENOVO\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
@@ -0,0 +1,74 @@
{
"version": 3,
"targets": {
"net6.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net6.0": []
},
"packageFolders": {
"C:\\Users\\LENOVO\\.nuget\\packages\\": {},
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj",
"projectName": "MyLibrary",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\LENOVO\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.402\\RuntimeIdentifierGraph.json"
}
}
}
}
@@ -0,0 +1,8 @@
{
"version": 2,
"dgSpecHash": "G0NgNbzafMULY59pEiOjKWxWkGCcgc41ml0OteKo5buPsqc0JzD/QHT1AHlbYnR6tgd3w0wBUVNVfuNadSLUTA==",
"success": true,
"projectFilePath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\Library\\MyLibrary.csproj",
"expectedPackageFiles": [],
"logs": []
}
@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OOP
{
public class EmailSender : ISender
{
public void Send(string to)
{
Console.WriteLine("Sent Mail by Email");
}
public void Hi()
{
}
}
}
@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OOP
{
public interface ISender
{
void Send(string to);
}
}
@@ -0,0 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OOP
{
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
protected int a;
public virtual string Introduce()
{
return "Hi, I'm " + Name;
}
}
}
@@ -0,0 +1,17 @@
using OOP;
User user = new User();
Console.WriteLine(user.Introduce());
ISender sender = new EmailSender();
ISender sender2 = new SMSSender();
//SMS
user.SendMessageToSomeone("H", new SMSSender());
//Email
user.SendMessageToSomeone("H", new EmailSender());
@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OOP
{
public class SMSSender : ISender
{
public void Send(string to)
{
Console.WriteLine("Sent Mail by SMS");
}
}
}
@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OOP
{
public class User : Person
{
public void SendMessageToSomeone(string to, ISender sender)
{
sender.Send(to);
}
public override string Introduce()
{
return "Hi, I'm " + Name + ". I am a user";
}
}
}
@@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v6.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"OOP/1.0.0": {
"runtime": {
"OOP.dll": {}
}
}
}
},
"libraries": {
"OOP/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -0,0 +1,9 @@
{
"runtimeOptions": {
"tfm": "net6.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "6.0.0"
}
}
}
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("OOP")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("OOP")]
[assembly: System.Reflection.AssemblyTitleAttribute("OOP")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
c95c3e42119661bbdbb649aa3692c0cfd8c3ae3b
@@ -0,0 +1,11 @@
is_global = true
build_property.TargetFramework = net6.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = OOP
build_property.ProjectDir = E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
@@ -0,0 +1 @@
3afb680a6ab3901c5695904540a36783270025c6
@@ -0,0 +1,14 @@
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\bin\Debug\net6.0\OOP.exe
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\bin\Debug\net6.0\OOP.deps.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\bin\Debug\net6.0\OOP.runtimeconfig.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\bin\Debug\net6.0\OOP.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\bin\Debug\net6.0\OOP.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.GeneratedMSBuildEditorConfig.editorconfig
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.AssemblyInfoInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.AssemblyInfo.cs
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.csproj.CoreCompileInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\refint\OOP.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\OOP.genruntimeconfig.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\Session05\Projects\OOP\obj\Debug\net6.0\ref\OOP.dll
@@ -0,0 +1 @@
a376bf2c66c162b2dfb8bd931fe624ceaa5129de
@@ -0,0 +1,68 @@
{
"format": 1,
"restore": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\OOP\\OOP.csproj": {}
},
"projects": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\OOP\\OOP.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\OOP\\OOP.csproj",
"projectName": "OOP",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\OOP\\OOP.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\Session05\\Projects\\OOP\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\LENOVO\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net6.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"net6.0": {
"targetAlias": "net6.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.402\\RuntimeIdentifierGraph.json"
}
}
}
}
}
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\LENOVO\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.7.0</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\LENOVO\.nuget\packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
</Project>

Some files were not shown because too many files have changed in this diff Show More