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,88 @@
{
"Version": 1,
"WorkspaceRootPath": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|e:\\ali\\programming\\asp.net\\mft\\projects\\h\\session07\\session07\\session07\\dip_solution04\\framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|solutionrelative:dip_solution04\\framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|e:\\ali\\programming\\asp.net\\mft\\projects\\h\\session07\\session07\\session07\\dip_solution04\\framework\\base\\baseservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|solutionrelative:dip_solution04\\framework\\base\\baseservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|e:\\ali\\programming\\asp.net\\mft\\projects\\h\\session07\\session07\\session07\\dip_solution04\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|solutionrelative:dip_solution04\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|e:\\ali\\programming\\asp.net\\mft\\projects\\h\\session07\\session07\\session07\\dip_solution04\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{8DDB2F59-34EA-4008-A736-612FCF6F5EDD}|DIP_Solution04\\DIP_Solution04.csproj|solutionrelative:dip_solution04\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 3,
"Children": [
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "Program.cs",
"DocumentMoniker": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Program.cs",
"RelativeDocumentMoniker": "DIP_Solution04\\Program.cs",
"ToolTip": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Program.cs",
"RelativeToolTip": "DIP_Solution04\\Program.cs",
"ViewState": "AQIAAAYAAAAAAAAAAAAAABoAAAAAAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-12-24T11:21:29.832Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "A.cs",
"DocumentMoniker": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\LifeCycle\\A.cs",
"RelativeDocumentMoniker": "DIP_Solution04\\LifeCycle\\A.cs",
"ToolTip": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\LifeCycle\\A.cs",
"RelativeToolTip": "DIP_Solution04\\LifeCycle\\A.cs",
"ViewState": "AQIAAAAAAAAAAAAAAAAAAAkAAAAFAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-12-24T11:20:14.812Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "BaseService.cs",
"DocumentMoniker": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Framework\\Base\\BaseService.cs",
"RelativeDocumentMoniker": "DIP_Solution04\\Framework\\Base\\BaseService.cs",
"ToolTip": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Framework\\Base\\BaseService.cs",
"RelativeToolTip": "DIP_Solution04\\Framework\\Base\\BaseService.cs",
"ViewState": "AQIAAAgAAAAAAAAAAAAAAAoAAAAFAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-12-24T11:18:54.027Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "IService.cs",
"DocumentMoniker": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Framework\\Interface\\IService.cs",
"RelativeDocumentMoniker": "DIP_Solution04\\Framework\\Interface\\IService.cs",
"ToolTip": "E:\\Ali\\Programming\\ASP.net\\MFT\\Projects\\H\\Session07\\Session07\\Session07\\DIP_Solution04\\Framework\\Interface\\IService.cs",
"RelativeToolTip": "DIP_Solution04\\Framework\\Interface\\IService.cs",
"ViewState": "AQIAAAgAAAAAAAAAAAAAAAsAAAAoAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-12-24T11:17:34.805Z",
"EditorCaption": ""
}
]
}
]
}
]
}
@@ -0,0 +1,87 @@
{
"Version": 1,
"WorkspaceRootPath": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|e:\\theorder\\ali_session07\\session07\\session07\\dip_solution05\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|solutionrelative:dip_solution05\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|e:\\theorder\\ali_session07\\session07\\session07\\dip_solution05\\externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|solutionrelative:dip_solution05\\externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|e:\\theorder\\ali_session07\\session07\\session07\\dip_solution05\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{BC5774AA-BBB0-4474-ADE6-00C748D812A9}|DIP_Solution05\\DIP_Solution05.csproj|solutionrelative:dip_solution05\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 4,
"Children": [
{
"$type": "Bookmark",
"Name": "ST:0:0:{eefa5220-e298-11d0-8f78-00a0c9110057}"
},
{
"$type": "Bookmark",
"Name": "ST:1:0:{e8b06f52-6d01-11d2-aa7d-00c04f990343}"
},
{
"$type": "Bookmark",
"Name": "ST:0:0:{b1e99781-ab81-11d0-b683-00aa00a3ee26}"
},
{
"$type": "Bookmark",
"Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Program.cs",
"DocumentMoniker": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\Program.cs",
"RelativeDocumentMoniker": "DIP_Solution05\\Program.cs",
"ToolTip": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\Program.cs",
"RelativeToolTip": "DIP_Solution05\\Program.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAYAAAAWAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T14:46:14.368Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "A.cs",
"DocumentMoniker": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\LifeCycle\\A.cs",
"RelativeDocumentMoniker": "DIP_Solution05\\LifeCycle\\A.cs",
"ToolTip": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\LifeCycle\\A.cs",
"RelativeToolTip": "DIP_Solution05\\LifeCycle\\A.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAACgAAAAJAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T13:38:51.898Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "Service01.cs",
"DocumentMoniker": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\ExternalService\\Service01.cs",
"RelativeDocumentMoniker": "DIP_Solution05\\ExternalService\\Service01.cs",
"ToolTip": "E:\\TheOrder\\ALI_Session07\\Session07\\Session07\\DIP_Solution05\\ExternalService\\Service01.cs",
"RelativeToolTip": "DIP_Solution05\\ExternalService\\Service01.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAABsAAAAFAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T12:47:52.844Z",
"EditorCaption": ""
}
]
}
]
}
]
}
@@ -0,0 +1,121 @@
{
"Version": 1,
"WorkspaceRootPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\externalservice\\service02.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:externalservice\\service02.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 79,
"SelectedChildIndex": 2,
"Children": [
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "IService.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Interface\\IService.cs",
"RelativeDocumentMoniker": "Framework\\Interface\\IService.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Interface\\IService.cs",
"RelativeToolTip": "Framework\\Interface\\IService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAuwAsAAAASAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:55:09.39Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "Service02.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service02.cs",
"RelativeDocumentMoniker": "ExternalService\\Service02.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service02.cs",
"RelativeToolTip": "ExternalService\\Service02.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAuwBIAAAAYAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:52:36.106Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Service01.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service01.cs",
"RelativeDocumentMoniker": "ExternalService\\Service01.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service01.cs",
"RelativeToolTip": "ExternalService\\Service01.cs",
"ViewState": "AgIAAAYAAAAAAAAAAAAuwBkAAAA4AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:47:48.002Z",
"EditorCaption": ""
},
{
"$type": "Bookmark",
"Name": "ST:0:0:{eefa5220-e298-11d0-8f78-00a0c9110057}"
},
{
"$type": "Bookmark",
"Name": "ST:1:0:{e8b06f52-6d01-11d2-aa7d-00c04f990343}"
},
{
"$type": "Bookmark",
"Name": "ST:0:0:{b1e99781-ab81-11d0-b683-00aa00a3ee26}"
},
{
"$type": "Bookmark",
"Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "Program.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA4AAAATAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:47:14.626Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "A.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\A.cs",
"RelativeDocumentMoniker": "LifeCycle\\A.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\A.cs",
"RelativeToolTip": "LifeCycle\\A.cs",
"ViewState": "AgIAAAQAAAAAAAAAAAAuwBQAAAAVAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T14:42:51.021Z",
"EditorCaption": ""
}
]
}
]
}
]
}
@@ -0,0 +1,172 @@
{
"Version": 1,
"WorkspaceRootPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:lifecycle\\a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\lifecycle\\b.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:lifecycle\\b.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\externalservice\\service03.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:externalservice\\service03.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\framework\\base\\baseservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:framework\\base\\baseservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:framework\\interface\\iservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:externalservice\\service01.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|e:\\theorder\\asp.net\\asp.net\\repo\\sessions\\dilastsession\\dilastsession\\externalservice\\service02.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}|DILastSession.csproj|solutionrelative:externalservice\\service02.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 79,
"SelectedChildIndex": 10,
"Children": [
{
"$type": "Bookmark",
"Name": "ST:0:0:{eefa5220-e298-11d0-8f78-00a0c9110057}"
},
{
"$type": "Bookmark",
"Name": "ST:1:0:{e8b06f52-6d01-11d2-aa7d-00c04f990343}"
},
{
"$type": "Bookmark",
"Name": "ST:0:0:{b1e99781-ab81-11d0-b683-00aa00a3ee26}"
},
{
"$type": "Bookmark",
"Name": "ST:128:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
},
{
"$type": "Document",
"DocumentIndex": 2,
"Title": "B.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\B.cs",
"RelativeDocumentMoniker": "LifeCycle\\B.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\B.cs",
"RelativeToolTip": "LifeCycle\\B.cs",
"ViewState": "AgIAAAYAAAAAAAAAAAAAABIAAAASAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T19:11:24.914Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 3,
"Title": "Service03.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service03.cs",
"RelativeDocumentMoniker": "ExternalService\\Service03.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service03.cs",
"RelativeToolTip": "ExternalService\\Service03.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAkAAAAaAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T19:04:04.435Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "BaseService.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Base\\BaseService.cs",
"RelativeDocumentMoniker": "Framework\\Base\\BaseService.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Base\\BaseService.cs",
"RelativeToolTip": "Framework\\Base\\BaseService.cs",
"ViewState": "AgIAAAMAAAAAAAAAAAAAAAgAAAAxAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T19:03:53.657Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "IService.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Interface\\IService.cs",
"RelativeDocumentMoniker": "Framework\\Interface\\IService.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Framework\\Interface\\IService.cs",
"RelativeToolTip": "Framework\\Interface\\IService.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAuwAwAAAASAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:55:09.39Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "Service02.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service02.cs",
"RelativeDocumentMoniker": "ExternalService\\Service02.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service02.cs",
"RelativeToolTip": "ExternalService\\Service02.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAuwBIAAAAYAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:52:36.106Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 6,
"Title": "Service01.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service01.cs",
"RelativeDocumentMoniker": "ExternalService\\Service01.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\ExternalService\\Service01.cs",
"RelativeToolTip": "ExternalService\\Service01.cs",
"ViewState": "AgIAAAEAAAAAAAAAAAAYwAkAAAATAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:47:48.002Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Program.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAA0AAAAxAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T18:47:14.626Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "A.cs",
"DocumentMoniker": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\A.cs",
"RelativeDocumentMoniker": "LifeCycle\\A.cs",
"ToolTip": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\LifeCycle\\A.cs",
"RelativeToolTip": "LifeCycle\\A.cs",
"ViewState": "AgIAAAQAAAAAAAAAAAAuwBEAAAAiAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-02-12T14:42:51.021Z",
"EditorCaption": ""
}
]
}
]
}
]
}
@@ -0,0 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
@@ -0,0 +1,25 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.11.35431.28
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DILastSession", "DILastSession.csproj", "{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CB5CEF4E-1FED-4E80-9F2B-4AEDC4484AAC}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6352D060-2B76-41CB-96FC-0477043BC903}
EndGlobalSection
EndGlobal
@@ -0,0 +1,30 @@
using DILastSession.Framework.Interface;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.ExternalService
{
public class Service01 : IService
{
public Service01()
{
}
public void M1()
{
Console.WriteLine("M1 is running in Server 1...");
}
public void M2()
{
Console.WriteLine("M2 is running in Server 1...");
}
public void M3()
{
Console.WriteLine("M3 is running in Server 1...");
}
}
}
@@ -0,0 +1,29 @@
using DILastSession.Framework.Interface;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.ExternalService
{
public class Service02 : IService
{
public Service02()
{
}
public void M1()
{
Console.WriteLine("M1 is running in Service 2...");
}
public void M2()
{
Console.WriteLine("M2 is running in Service 2...");
}
public void M3()
{
Console.WriteLine("M3 is running in Service 2...");
}
}
}
@@ -0,0 +1,22 @@
using DILastSession.Framework.Base;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.ExternalService
{
public class Service03 : BaseService
{
public Service03()
{
}
public override void M1()
{
//base.M1();
}
}
}
@@ -0,0 +1,43 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.Framework.Base
{
public class BaseService : Interface.IService
{
#region [ - Ctor - ]
public BaseService()
{
}
#endregion
#region [ - Methods - ]
#region [ - M1() - ]
public virtual void M1()
{
throw new NotImplementedException();
}
#endregion
#region [ - M2() - ]
public virtual void M2()
{
throw new NotImplementedException();
}
#endregion
#region [ - M3() - ]
public virtual void M3()
{
throw new NotImplementedException();
}
#endregion
#endregion
}
}
@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.Framework.Interface
{
public interface IService
{
#region [ - Methods - ]
void M1();
void M2();
void M3();
#endregion
}
}
@@ -0,0 +1,25 @@
using DILastSession.ExternalService;
using DILastSession.Framework.Interface;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.LifeCycle
{
public class A
{
public A()
{
}
public void Print(IService newService)
{
IService service = newService;
service.M1();
}
}
}
@@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.LifeCycle
{
public class B
{
#region [ - Ctor - ]
#region [ - B(Framework.Interface.IService ref_IService) - ]
// Eager Aggregation
public B(Framework.Interface.IService ref_IService)
{
Ref_IService = ref_IService;
}
#endregion
#region [ - A() - ]
public B()
{
}
#endregion
#endregion
#region [ - Prop - ]
public Framework.Interface.IService Ref_IService { get; set; }
#endregion
#region [ - Method - ]
#region [ - InitializeIServiceRefrence(Framework.Interface.IService ref_IService) - ]
// Lazy Aggregation
public void InitializeIServiceRefrence(Framework.Interface.IService ref_IService)
{
Ref_IService = ref_IService;
}
#endregion
#endregion
}
}
@@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DILastSession.LifeCycle
{
public class C
{
#region [ - Ctor - ]
#region [ - C(Framework.Interface.IService ref_IService) - ]
// Eager Aggregation
public C(Framework.Interface.IService ref_IService)
{
Ref_IService = ref_IService;
}
#endregion
#region [ - C() - ]
public C()
{
}
#endregion
#endregion
#region [ - Prop - ]
public Framework.Interface.IService Ref_IService { get; set; }
#endregion
#region [ - Method - ]
#region [ - InitializeIServiceRefrence(Framework.Interface.IService ref_IService) - ]
// Lazy Aggregation
public void InitializeIServiceRefrence(Framework.Interface.IService ref_IService)
{
Ref_IService = ref_IService;
}
#endregion
#endregion
}
}
@@ -0,0 +1,33 @@
namespace DILastSession
{
internal class Program
{
private static void Main(string[] args)
{
Console.WriteLine("| Eager Aggregation :");
Console.WriteLine("A:");
LifeCycle.A a = new LifeCycle.A();
a.Print(new ExternalService.Service01());
a.Print(new ExternalService.Service02());
//LifeCycle.A Ref_A_1 = new LifeCycle.A();
//Ref_A_1.Ref_IService.M1();
//LifeCycle.A Ref_A_2 = new LifeCycle.A();
//Ref_A_2.Ref_IService.M2();
//LifeCycle.A Ref_A_3 = new LifeCycle.A();
//Ref_A_3.Ref_IService.M3();
Console.WriteLine("--------------");
}
}
}
@@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"DILastSession/1.0.0": {
"runtime": {
"DILastSession.dll": {}
}
}
}
},
"libraries": {
"DILastSession/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
@@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}
@@ -0,0 +1,73 @@
{
"format": 1,
"restore": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj": {}
},
"projects": {
"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj",
"projectName": "DILastSession",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\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": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.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\\8.0.404/PortableRuntimeIdentifierGraph.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.11.1</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,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.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("DILastSession")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+37b5d21676bf6e89e3d95a8e749397ed5d7e5a88")]
[assembly: System.Reflection.AssemblyProductAttribute("DILastSession")]
[assembly: System.Reflection.AssemblyTitleAttribute("DILastSession")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
654e054d71ab58745f73089ca3d79f59fbb69d11ec54e190d79d4669459b9c39
@@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net8.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 = DILastSession
build_property.ProjectDir = E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
@@ -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 @@
8e5fe731a8d6bf97edecb117fd8174f29b3c5b1dea86b1f50ee683382c356311
@@ -0,0 +1,30 @@
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\bin\Debug\net8.0\DILastSession.exe
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\bin\Debug\net8.0\DILastSession.deps.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\bin\Debug\net8.0\DILastSession.runtimeconfig.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\bin\Debug\net8.0\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\bin\Debug\net8.0\DILastSession.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.GeneratedMSBuildEditorConfig.editorconfig
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.AssemblyInfoInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.AssemblyInfo.cs
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.csproj.CoreCompileInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.sourcelink.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\refint\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\DILastSession.genruntimeconfig.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\LastSession\DILastSession\obj\Debug\net8.0\ref\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\bin\Debug\net8.0\DILastSession.exe
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\bin\Debug\net8.0\DILastSession.deps.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\bin\Debug\net8.0\DILastSession.runtimeconfig.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\bin\Debug\net8.0\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\bin\Debug\net8.0\DILastSession.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.GeneratedMSBuildEditorConfig.editorconfig
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.AssemblyInfoInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.AssemblyInfo.cs
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.csproj.CoreCompileInputs.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.sourcelink.json
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\refint\DILastSession.dll
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.pdb
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\DILastSession.genruntimeconfig.cache
E:\TheOrder\ASP.NET\ASP.NET\Repo\Sessions\DILastSession\DILastSession\obj\Debug\net8.0\ref\DILastSession.dll
@@ -0,0 +1 @@
d125f90019339cdc3998da8d2edfe0d84f8352d20f174498fc95f6431054a406
@@ -0,0 +1 @@
{"documents":{"E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\*":"https://raw.githubusercontent.com/TheOrderOfPhoenix/ASP.NET/37b5d21676bf6e89e3d95a8e749397ed5d7e5a88/*"}}
@@ -0,0 +1,79 @@
{
"version": 3,
"targets": {
"net8.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net8.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\\DILastSession\\DILastSession\\DILastSession.csproj",
"projectName": "DILastSession",
"projectPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj",
"packagesPath": "C:\\Users\\LENOVO\\.nuget\\packages\\",
"outputPath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\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": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.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\\8.0.404/PortableRuntimeIdentifierGraph.json"
}
}
}
}
@@ -0,0 +1,8 @@
{
"version": 2,
"dgSpecHash": "XRB5scheZK8=",
"success": true,
"projectFilePath": "E:\\TheOrder\\ASP.NET\\ASP.NET\\Repo\\Sessions\\DILastSession\\DILastSession\\DILastSession.csproj",
"expectedPackageFiles": [],
"logs": []
}
@@ -0,0 +1,34 @@
A really quick overview
1. A class that initializes a service
2. A class that simply uses a service
3. A class that uses more than one similar services
4. A class that uses an interface as a service
5. Two classes that use that interface as a service
6. An abstract class...
Ali Explaining the last part of the DI Project
Databases
Microsoft SQL Server
Entity Framework Core
ORM - Object Relational Mapper
Code First vs Database First
DbContext -> used as:
+ A bridge between your C# code and the database.
+ A session that manages all operations for a specific unit of work.
+ A container that holds your entity sets (tables).
We Need a DbContext in some controllers
Where does the initialization happen?
Next Steps
Future Plans...
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{0486B1D9-EAFD-4449-B375-BCD2F2819933}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>DIP_Solution01</RootNamespace>
<AssemblyName>DIP_Solution01</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ExternalService\Service01.cs" />
<Compile Include="ExternalService\Service02.cs" />
<Compile Include="ExternalService\Service03.cs" />
<Compile Include="LifeCycle\A.cs" />
<Compile Include="LifeCycle\B.cs" />
<Compile Include="LifeCycle\C.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.ExternalService
{
public class Service01
{
#region [ - Ctor - ]
public Service01()
{
}
#endregion
#region [ - Method - ]
public void M1()
{
Console.WriteLine("M1 is running ...");
}
#endregion
}
}
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.ExternalService
{
public class Service02
{
#region [ - Ctor - ]
public Service02()
{
}
#endregion
#region [ - Method - ]
public void M2()
{
Console.WriteLine("M2 is running ...");
}
#endregion
}
}
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.ExternalService
{
public class Service03
{
#region [ - Ctor - ]
public Service03()
{
}
#endregion
#region [ - Method - ]
public void M3()
{
Console.WriteLine("M3 is running ...");
}
#endregion
}
}
@@ -0,0 +1,63 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.LifeCycle
{
public class A
{
#region [ - Ctor - ]
public A(ExternalService.Service01 service01,
ExternalService.Service02 service02,
ExternalService.Service03 service03)
{
//Eager Composition
//Ref_Service01 = new ExternalService.Service01();
//Ref_Service02 = new ExternalService.Service02();
//Ref_Service03 = new ExternalService.Service03();
//Eager Aggregation
Ref_Service01 = service01;
Ref_Service02 = service02;
Ref_Service03 = service03;
}
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
////Lazy Composition:
//#region [ - InitializeService01Refrence() - ]
//public void InitializeService01Refrence()
//{
// Ref_Service01 = new ExternalService.Service01();
//}
//#endregion
//#region [ - InitializeService02Refrence() - ]
//public void InitializeService02Refrence()
//{
// Ref_Service02 = new ExternalService.Service02();
//}
//#endregion
//#region [ - InitializeService03Refrence() - ]
//public void InitializeService03Refrence()
//{
// Ref_Service03 = new ExternalService.Service03();
//}
//#endregion
#endregion
}
}
@@ -0,0 +1,55 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.LifeCycle
{
public class B
{
#region [ - Ctor - ]
public B()
{
//Eager Composition
Ref_Service01 = new ExternalService.Service01();
Ref_Service02 = new ExternalService.Service02();
Ref_Service03 = new ExternalService.Service03();
}
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
////Lazy Composition:
//#region [ - InitializeService01Refrence() - ]
//public void InitializeService01Refrence()
//{
// Ref_Service01 = new ExternalService.Service01();
//}
//#endregion
//#region [ - InitializeService02Refrence() - ]
//public void InitializeService02Refrence()
//{
// Ref_Service02 = new ExternalService.Service02();
//}
//#endregion
//#region [ - InitializeService03Refrence() - ]
//public void InitializeService03Refrence()
//{
// Ref_Service03 = new ExternalService.Service03();
//}
//#endregion
#endregion
}
}
@@ -0,0 +1,55 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01.LifeCycle
{
public class C
{
#region [ - Ctor - ]
public C()
{
//Eager Composition
Ref_Service01 = new ExternalService.Service01();
Ref_Service02 = new ExternalService.Service02();
Ref_Service03 = new ExternalService.Service03();
}
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
////Lazy Composition:
//#region [ - InitializeService01Refrence() - ]
//public void InitializeService01Refrence()
//{
// Ref_Service01 = new ExternalService.Service01();
//}
//#endregion
//#region [ - InitializeService02Refrence() - ]
//public void InitializeService02Refrence()
//{
// Ref_Service02 = new ExternalService.Service02();
//}
//#endregion
//#region [ - InitializeService03Refrence() - ]
//public void InitializeService03Refrence()
//{
// Ref_Service03 = new ExternalService.Service03();
//}
//#endregion
#endregion
}
}
@@ -0,0 +1,104 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution01
{
class Program
{
static void Main(string[] args)
{
LifeCycle.A Ref_A = new LifeCycle.A(new ExternalService.Service01(),
new ExternalService.Service02(),
new ExternalService.Service03());
LifeCycle.B Ref_B = new LifeCycle.B();
LifeCycle.C Ref_C = new LifeCycle.C();
// Active
#region [ - Eager Composition - ]
Console.WriteLine("A:");
Ref_A.Ref_Service01.M1();
Ref_A.Ref_Service02.M2();
Ref_A.Ref_Service03.M3();
Console.WriteLine("--------------");
Console.WriteLine("B:");
Ref_B.Ref_Service01.M1();
Ref_B.Ref_Service02.M2();
Ref_B.Ref_Service03.M3();
Console.WriteLine("--------------");
Console.WriteLine("C:");
Ref_C.Ref_Service01.M1();
Ref_C.Ref_Service02.M2();
Ref_C.Ref_Service03.M3();
#endregion
// Disable
#region [ - Lazy Composition - ]
//#region [ - A - ]
//Console.WriteLine("A:");
//Ref_A.InitializeService01Refrence();
//Ref_A.Ref_Service01.M1();
//Ref_A.InitializeService02Refrence();
//Ref_A.Ref_Service02.M2();
//Ref_A.InitializeService03Refrence();
//Ref_A.Ref_Service03.M3();
//#endregion
//#region [ - B - ]
//Console.WriteLine("B:");
//Ref_B.InitializeService01Refrence();
//Ref_B.Ref_Service01.M1();
//Ref_B.InitializeService02Refrence();
//Ref_B.Ref_Service02.M2();
//Ref_B.InitializeService03Refrence();
//Ref_B.Ref_Service03.M3();
//#endregion
//#region [ - C - ]
//Console.WriteLine("C:");
//Ref_C.InitializeService01Refrence();
//Ref_C.Ref_Service01.M1();
//Ref_C.InitializeService02Refrence();
//Ref_C.Ref_Service02.M2();
//Ref_C.InitializeService03Refrence();
//Ref_C.Ref_Service03.M3();
//#endregion
#endregion
System.Console.ReadLine();
}
}
}
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("DIP_Solution01")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DIP_Solution01")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("0486b1d9-eafd-4449-b375-bcd2f2819933")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
@@ -0,0 +1 @@
bc14799579aaa2c0030d531b5cd699cc7d64e75d
@@ -0,0 +1,7 @@
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\bin\Debug\DIP_Solution01.exe.config
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\bin\Debug\DIP_Solution01.exe
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\bin\Debug\DIP_Solution01.pdb
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\obj\Debug\DIP_Solution01.csproj.AssemblyReference.cache
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\obj\Debug\DIP_Solution01.csproj.CoreCompileInputs.cache
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\obj\Debug\DIP_Solution01.exe
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution01\obj\Debug\DIP_Solution01.pdb
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{FC515F23-9748-41B8-B33B-89BBAF4E8016}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>DIP_Solution02</RootNamespace>
<AssemblyName>DIP_Solution02</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ExternalService\Service01.cs" />
<Compile Include="ExternalService\Service02.cs" />
<Compile Include="ExternalService\Service03.cs" />
<Compile Include="LifeCycle\A.cs" />
<Compile Include="LifeCycle\B.cs" />
<Compile Include="LifeCycle\C.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.ExternalService
{
public class Service01
{
#region [ - Ctor - ]
public Service01()
{
}
#endregion
#region [ - Method - ]
public void M1()
{
Console.WriteLine("M1 is running ...");
}
#endregion
}
}
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.ExternalService
{
public class Service02
{
#region [ - Ctor - ]
public Service02()
{
}
#endregion
#region [ - Method - ]
public void M2()
{
Console.WriteLine("M2 is running ...");
}
#endregion
}
}
@@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.ExternalService
{
public class Service03
{
#region [ - Ctor - ]
public Service03()
{
}
#endregion
#region [ - Method - ]
public void M3()
{
Console.WriteLine("M3 is running ...");
}
#endregion
}
}
@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.LifeCycle
{
public class A
{
#region [ - Ctor - ]
#region [ - A(ExternalService.Service01 ref_Service01 ExternalService.Service02 ref_Service02 ExternalService.Service03 ref_Service03) - ]
////Eager Aggregation
//public A(ExternalService.Service01 ref_Service01,
// ExternalService.Service02 ref_Service02,
// ExternalService.Service03 ref_Service03)
//{
// Ref_Service01 = ref_Service01;
// Ref_Service02 = ref_Service02;
// Ref_Service03 = ref_Service03;
//}
#endregion
#region [ - A() - ]
public A()
{
}
#endregion
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
//Lazy Aggregation:
#region [ - InitializeService01Refrence(ExternalService.Service01 ref_Service01) - ]
public void InitializeService01Refrence(ExternalService.Service01 ref_Service01)
{
Ref_Service01 = ref_Service01;
}
#endregion
#region [ - InitializeService02Refrence(ExternalService.Service02 ref_Service02) - ]
public void InitializeService02Refrence(ExternalService.Service02 ref_Service02)
{
Ref_Service02 = ref_Service02;
}
#endregion
#region [ - InitializeService03Refrence(ExternalService.Service03 ref_Service03) - ]
public void InitializeService03Refrence(ExternalService.Service03 ref_Service03)
{
Ref_Service03 = ref_Service03;
}
#endregion
#endregion
}
}
@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.LifeCycle
{
public class B
{
#region [ - Ctor - ]
#region [ - B(ExternalService.Service01 ref_Service01 ExternalService.Service02 ref_Service02 ExternalService.Service03 ref_Service03) - ]
////Eager Aggregation
//public B(ExternalService.Service01 ref_Service01,
// ExternalService.Service02 ref_Service02,
// ExternalService.Service03 ref_Service03)
//{
// Ref_Service01 = ref_Service01;
// Ref_Service02 = ref_Service02;
// Ref_Service03 = ref_Service03;
//}
#endregion
#region [ - B() - ]
public B()
{
}
#endregion
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
//Lazy Aggregation:
#region [ - InitializeService01Refrence(ExternalService.Service01 ref_Service01) - ]
public void InitializeService01Refrence(ExternalService.Service01 ref_Service01)
{
Ref_Service01 = ref_Service01;
}
#endregion
#region [ - InitializeService02Refrence(ExternalService.Service02 ref_Service02) - ]
public void InitializeService02Refrence(ExternalService.Service02 ref_Service02)
{
Ref_Service02 = ref_Service02;
}
#endregion
#region [ - InitializeService03Refrence(ExternalService.Service03 ref_Service03) - ]
public void InitializeService03Refrence(ExternalService.Service03 ref_Service03)
{
Ref_Service03 = ref_Service03;
}
#endregion
#endregion
}
}
@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02.LifeCycle
{
public class C
{
#region [ - Ctor - ]
#region [ - C(ExternalService.Service01 ref_Service01 ExternalService.Service02 ref_Service02 ExternalService.Service03 ref_Service03) - ]
////Eager Aggregation
//public C(ExternalService.Service01 ref_Service01,
// ExternalService.Service02 ref_Service02,
// ExternalService.Service03 ref_Service03)
//{
// Ref_Service01 = ref_Service01;
// Ref_Service02 = ref_Service02;
// Ref_Service03 = ref_Service03;
//}
#endregion
#region [ - C() - ]
public C()
{
}
#endregion
#endregion
#region [ - Props - ]
public ExternalService.Service01 Ref_Service01 { get; set; }
public ExternalService.Service02 Ref_Service02 { get; set; }
public ExternalService.Service03 Ref_Service03 { get; set; }
#endregion
#region [ - Methods - ]
//Lazy Aggregation:
#region [ - InitializeService01Refrence(ExternalService.Service01 ref_Service01) - ]
public void InitializeService01Refrence(ExternalService.Service01 ref_Service01)
{
Ref_Service01 = ref_Service01;
}
#endregion
#region [ - InitializeService02Refrence(ExternalService.Service02 ref_Service02) - ]
public void InitializeService02Refrence(ExternalService.Service02 ref_Service02)
{
Ref_Service02 = ref_Service02;
}
#endregion
#region [ - InitializeService03Refrence(ExternalService.Service03 ref_Service03) - ]
public void InitializeService03Refrence(ExternalService.Service03 ref_Service03)
{
Ref_Service03 = ref_Service03;
}
#endregion
#endregion
}
}
@@ -0,0 +1,102 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DIP_Solution02
{
class Program
{
static void Main(string[] args)
{
LifeCycle.A Ref_A = new LifeCycle.A();
LifeCycle.B Ref_B = new LifeCycle.B();
LifeCycle.C Ref_C = new LifeCycle.C();
// Disable
#region [ - Eager Aggregation - ]
//Console.WriteLine("A:");
//Ref_A.Ref_Service01.M1();
//Ref_A.Ref_Service02.M2();
//Ref_A.Ref_Service03.M3();
//Console.WriteLine("--------------");
//Console.WriteLine("B:");
//Ref_B.Ref_Service01.M1();
//Ref_B.Ref_Service02.M2();
//Ref_B.Ref_Service03.M3();
//Console.WriteLine("--------------");
//Console.WriteLine("C:");
//Ref_C.Ref_Service01.M1();
//Ref_C.Ref_Service02.M2();
//Ref_C.Ref_Service03.M3();
#endregion
// Active
#region [ - Lazy Aggregation - ]
#region [ - A - ]
Console.WriteLine("A:");
Ref_A.InitializeService01Refrence(new ExternalService.Service01());
Ref_A.Ref_Service01.M1();
Ref_A.InitializeService02Refrence(new ExternalService.Service02());
Ref_A.Ref_Service02.M2();
Ref_A.InitializeService03Refrence(new ExternalService.Service03());
Ref_A.Ref_Service03.M3();
#endregion
#region [ - B - ]
Console.WriteLine("B:");
Ref_B.InitializeService01Refrence(new ExternalService.Service01());
Ref_B.Ref_Service01.M1();
Ref_B.InitializeService02Refrence(new ExternalService.Service02());
Ref_B.Ref_Service02.M2();
Ref_B.InitializeService03Refrence(new ExternalService.Service03());
Ref_B.Ref_Service03.M3();
#endregion
#region [ - C - ]
Console.WriteLine("C:");
Ref_C.InitializeService01Refrence(new ExternalService.Service01());
Ref_C.Ref_Service01.M1();
Ref_C.InitializeService02Refrence(new ExternalService.Service02());
Ref_C.Ref_Service02.M2();
Ref_C.InitializeService03Refrence(new ExternalService.Service03());
Ref_C.Ref_Service03.M3();
#endregion
#endregion
System.Console.ReadLine();
}
}
}
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("DIP_Solution02")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("DIP_Solution02")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("fc515f23-9748-41b8-b33b-89bbaf4e8016")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
@@ -0,0 +1 @@
bc14799579aaa2c0030d531b5cd699cc7d64e75d
@@ -0,0 +1,7 @@
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\bin\Debug\DIP_Solution02.exe.config
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\bin\Debug\DIP_Solution02.exe
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\bin\Debug\DIP_Solution02.pdb
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\obj\Debug\DIP_Solution02.csproj.AssemblyReference.cache
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\obj\Debug\DIP_Solution02.csproj.CoreCompileInputs.cache
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\obj\Debug\DIP_Solution02.exe
E:\Ali\Programming\ASP.net\Projects\H\Session07\Session07\Session07\DIP_Solution02\obj\Debug\DIP_Solution02.pdb
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
</configuration>
@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{242554DD-3668-4227-B663-EAA6A6CF5A53}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>DIP_Solution03</RootNamespace>
<AssemblyName>DIP_Solution03</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ExternalService\Service01.cs" />
<Compile Include="ExternalService\Service02.cs" />
<Compile Include="ExternalService\Service03.cs" />
<Compile Include="LifeCycle\A.cs" />
<Compile Include="LifeCycle\B.cs" />
<Compile Include="LifeCycle\C.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Service.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

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