修改配置缓存逻辑
This commit is contained in:
6
.idea/.idea.FantasyNetTest/.idea/vcs.xml
generated
Normal file
6
.idea/.idea.FantasyNetTest/.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
BIN
.vs/FantasyNetTest/CopilotIndices/17.14.698.11175/CodeChunks.db
Normal file
BIN
.vs/FantasyNetTest/CopilotIndices/17.14.698.11175/CodeChunks.db
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
100
.vs/FantasyNetTest/v17/DocumentLayout.backup.json
Normal file
100
.vs/FantasyNetTest/v17/DocumentLayout.backup.json
Normal file
@@ -0,0 +1,100 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "D:\\work\\FantasyNetTest\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:FantasyNetTest\\Form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\work\\FantasyNetTest\\fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\work\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:FantasyNetTest\\TestProtocol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\work\\FantasyNetTest\\FantasyNetTest\\Config.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
|
||||
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:FantasyNetTest\\Config.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|D:\\work\\FantasyNetTest\\FantasyNetTest\\Log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:FantasyNetTest\\Log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 0,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "Form1.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Form1.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\Form1.cs",
|
||||
"ViewState": "AgIAACQAAAAAAAAAAAAgwHECAAAEAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T14:06:30.336Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "Form1.cs [\u8BBE\u8BA1]",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Form1.cs",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs [\u8BBE\u8BA1]",
|
||||
"RelativeToolTip": "..\\..\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs [\u8BBE\u8BA1]",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T11:09:51.154Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "TestProtocol.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\TestProtocol.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\TestProtocol.cs",
|
||||
"ViewState": "AQIAAAYAAAAAAAAAAADwvxcAAAAlAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T09:28:41.991Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "Config.json",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Config.json",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"RelativeToolTip": "FantasyNetTest\\Config.json",
|
||||
"ViewState": "AQIAAAAAAAAAAAAAAAAAAAMAAAABAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
|
||||
"WhenOpened": "2025-08-10T07:28:50.344Z"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 4,
|
||||
"Title": "Log.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Log.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\Log.cs",
|
||||
"ViewState": "AQIAAEsAAAAAAAAAAAAYwB8AAAApAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T06:36:37.693Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,25 +1,29 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "D:\\myself\\Games\\FantasyNetTest\\",
|
||||
"WorkspaceRootPath": "D:\\work\\FantasyNetTest\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\myself\\games\\fantasynettest\\fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\work\\fantasynettest\\fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|D:\\myself\\Games\\FantasyNetTest\\fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|D:\\work\\FantasyNetTest\\fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\myself\\games\\fantasynettest\\fantasynettest\\testprotocol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\work\\fantasynettest\\fantasynettest\\form1.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\form1.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\work\\fantasynettest\\fantasynettest\\testprotocol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\testprotocol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\myself\\games\\fantasynettest\\fantasynettest\\config.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\work\\fantasynettest\\fantasynettest\\config.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\config.json||{90A6B3A7-C1A3-4009-A288-E2FF89E96FA0}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\myself\\games\\fantasynettest\\fantasynettest\\log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"AbsoluteMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|d:\\work\\fantasynettest\\fantasynettest\\log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{812F24C9-1386-4A5F-AC1D-1840E28FA05D}|FantasyNetTest\\FantasyNetTest.csproj|solutionrelative:fantasynettest\\log.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
}
|
||||
],
|
||||
@@ -30,17 +34,30 @@
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 0,
|
||||
"SelectedChildIndex": 1,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "Form1.Designer.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.Designer.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Form1.Designer.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.Designer.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\Form1.Designer.cs",
|
||||
"ViewState": "AgIAAIwAAAAAAAAAAAAiwLoAAAASAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-11T09:04:01.709Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "Form1.cs",
|
||||
"DocumentMoniker": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Form1.cs",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\Form1.cs",
|
||||
"ViewState": "AQIAAGcCAAAAAAAAAAAiwHUCAAAAAAAA",
|
||||
"ViewState": "AgIAADkAAAAAAAAAAAAgwPcCAAARAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T14:06:30.336Z",
|
||||
"EditorCaption": ""
|
||||
@@ -49,9 +66,9 @@
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "Form1.cs [\u8BBE\u8BA1]",
|
||||
"DocumentMoniker": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Form1.cs",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Form1.cs [\u8BBE\u8BA1]",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Form1.cs [\u8BBE\u8BA1]",
|
||||
"RelativeToolTip": "FantasyNetTest\\Form1.cs [\u8BBE\u8BA1]",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T11:09:51.154Z",
|
||||
@@ -59,23 +76,24 @@
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"DocumentIndex": 3,
|
||||
"Title": "TestProtocol.cs",
|
||||
"DocumentMoniker": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\TestProtocol.cs",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\TestProtocol.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\TestProtocol.cs",
|
||||
"ViewState": "AQIAAAYAAAAAAAAAAADwvxcAAAAlAAAA",
|
||||
"ViewState": "AgIAAAYAAAAAAAAAAADwvxcAAAAlAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-08-10T09:28:41.991Z"
|
||||
"WhenOpened": "2025-08-10T09:28:41.991Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"DocumentIndex": 4,
|
||||
"Title": "Config.json",
|
||||
"DocumentMoniker": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Config.json",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Config.json",
|
||||
"RelativeToolTip": "FantasyNetTest\\Config.json",
|
||||
"ViewState": "AQIAAAAAAAAAAAAAAAAAAAMAAAABAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001642|",
|
||||
@@ -83,11 +101,11 @@
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 4,
|
||||
"DocumentIndex": 5,
|
||||
"Title": "Log.cs",
|
||||
"DocumentMoniker": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"DocumentMoniker": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"RelativeDocumentMoniker": "FantasyNetTest\\Log.cs",
|
||||
"ToolTip": "D:\\myself\\Games\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"ToolTip": "D:\\work\\FantasyNetTest\\FantasyNetTest\\Log.cs",
|
||||
"RelativeToolTip": "FantasyNetTest\\Log.cs",
|
||||
"ViewState": "AQIAAEsAAAAAAAAAAAAYwB8AAAApAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
|
||||
Binary file not shown.
BIN
.vs/ProjectEvaluation/fantasynettest.metadata.v9.bin
Normal file
BIN
.vs/ProjectEvaluation/fantasynettest.metadata.v9.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
.vs/ProjectEvaluation/fantasynettest.projects.v9.bin
Normal file
BIN
.vs/ProjectEvaluation/fantasynettest.projects.v9.bin
Normal file
Binary file not shown.
BIN
.vs/ProjectEvaluation/fantasynettest.strings.v9.bin
Normal file
BIN
.vs/ProjectEvaluation/fantasynettest.strings.v9.bin
Normal file
Binary file not shown.
@@ -1,8 +1,11 @@
|
||||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AArgumentNullException_002Ecs_002Fl_003AC_0021_003FUsers_003Fbob_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F7fcc41fe48c43f71d1476329de953fce8565fcc5dbf3c8c6fdb81c216b19c4_003FArgumentNullException_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AComboBox_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fce02df019cd24b8b9cbae16d58cdd1e7cee8a0_003F41_003Faa378fa3_003FComboBox_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ADockStyle_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fce02df019cd24b8b9cbae16d58cdd1e7cee8a0_003F1e_003F1b6a177c_003FDockStyle_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AExceptionDispatchInfo_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fde3edec1170e48a0a2478d8743508635c8e910_003F1b_003F30d746c0_003FExceptionDispatchInfo_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ANativeWindow_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fce02df019cd24b8b9cbae16d58cdd1e7cee8a0_003F63_003F48c3a174_003FNativeWindow_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ANativeWindow_002Ecs_002Fl_003AC_0021_003FUsers_003Fbob_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fda570befe0d840bbba1e7d691e03cce1cef908_003F89_003F17236176_003FNativeWindow_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003APath_002EWindows_002Ecs_002Fl_003AC_0021_003FUsers_003Fbob_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FSourcesCache_003F4c2266d9aba4c4ba36aec62278534ed6bbd881431c65810dd69b8d57bbf_003FPath_002EWindows_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003APropertyInfo_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fde3edec1170e48a0a2478d8743508635c8e910_003F07_003F70ad38ae_003FPropertyInfo_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATextBoxBase_002Ecs_002Fl_003AC_0021_003FUsers_003F60527_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E1_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fce02df019cd24b8b9cbae16d58cdd1e7cee8a0_003F73_003F00565224_003FTextBoxBase_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
|
||||
<s:Boolean x:Key="/Default/ResxEditorPersonal/CheckedGroups/=FantasyNetTest_002FForm1/@EntryIndexedValue">True</s:Boolean>
|
||||
|
||||
@@ -13,13 +13,13 @@ public class Config
|
||||
/// </summary>
|
||||
public int Heartbeat { get; set; } = 5;
|
||||
|
||||
/// <summary>
|
||||
/// 默认账号
|
||||
/// </summary>
|
||||
public string Account { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// 协议目录
|
||||
/// </summary>
|
||||
public string ProtocolScriptPath { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// 缓存账号列表
|
||||
/// </summary>
|
||||
public HashSet<string> Accounts { get; set; } = [];
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"Server": "127.0.0.1:20001",
|
||||
"Heartbeat": 5,
|
||||
"ProtocolScriptPath": "D:\\myself\\Games\\Fishing2\\Assets\\Scripts\\Generate",
|
||||
"Account": "test003"
|
||||
"ProtocolScriptPath": "D:\\work\\Fishing2\\Assets\\Scripts\\Generate"
|
||||
}
|
||||
40
FantasyNetTest/Form1.Designer.cs
generated
40
FantasyNetTest/Form1.Designer.cs
generated
@@ -35,7 +35,7 @@ partial class Form1
|
||||
logTextBox = new RichTextBox();
|
||||
groupBox1 = new GroupBox();
|
||||
buttonConnect = new Button();
|
||||
textBoxAccount = new TextBox();
|
||||
comboBoxAccount = new ComboBox();
|
||||
groupBox2 = new GroupBox();
|
||||
panel1 = new Panel();
|
||||
buttonSend = new Button();
|
||||
@@ -43,6 +43,7 @@ partial class Form1
|
||||
groupBox3 = new GroupBox();
|
||||
comboBoxProtocol = new ComboBox();
|
||||
timer2 = new System.Windows.Forms.Timer(components);
|
||||
linkLabel2 = new LinkLabel();
|
||||
groupBox4.SuspendLayout();
|
||||
groupBox1.SuspendLayout();
|
||||
groupBox2.SuspendLayout();
|
||||
@@ -87,7 +88,7 @@ partial class Form1
|
||||
// groupBox1
|
||||
//
|
||||
groupBox1.Controls.Add(buttonConnect);
|
||||
groupBox1.Controls.Add(textBoxAccount);
|
||||
groupBox1.Controls.Add(comboBoxAccount);
|
||||
groupBox1.Location = new Point(7, 7);
|
||||
groupBox1.Name = "groupBox1";
|
||||
groupBox1.Size = new Size(316, 62);
|
||||
@@ -97,20 +98,21 @@ partial class Form1
|
||||
//
|
||||
// buttonConnect
|
||||
//
|
||||
buttonConnect.Location = new Point(235, 23);
|
||||
buttonConnect.Location = new Point(235, 22);
|
||||
buttonConnect.Name = "buttonConnect";
|
||||
buttonConnect.Size = new Size(75, 23);
|
||||
buttonConnect.Size = new Size(75, 26);
|
||||
buttonConnect.TabIndex = 2;
|
||||
buttonConnect.Text = "登录";
|
||||
buttonConnect.UseVisualStyleBackColor = true;
|
||||
buttonConnect.Click += buttonConnect_Click;
|
||||
//
|
||||
// textBoxAccount
|
||||
// comboBoxAccount
|
||||
//
|
||||
textBoxAccount.Location = new Point(10, 23);
|
||||
textBoxAccount.Name = "textBoxAccount";
|
||||
textBoxAccount.Size = new Size(219, 23);
|
||||
textBoxAccount.TabIndex = 0;
|
||||
comboBoxAccount.FormattingEnabled = true;
|
||||
comboBoxAccount.Location = new Point(10, 23);
|
||||
comboBoxAccount.Name = "comboBoxAccount";
|
||||
comboBoxAccount.Size = new Size(219, 25);
|
||||
comboBoxAccount.TabIndex = 0;
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
@@ -150,6 +152,7 @@ partial class Form1
|
||||
// groupBox3
|
||||
//
|
||||
groupBox3.Controls.Add(comboBoxProtocol);
|
||||
groupBox3.Controls.Add(linkLabel2);
|
||||
groupBox3.Location = new Point(7, 75);
|
||||
groupBox3.Name = "groupBox3";
|
||||
groupBox3.Size = new Size(316, 64);
|
||||
@@ -171,6 +174,19 @@ partial class Form1
|
||||
timer2.Interval = 16;
|
||||
timer2.Tick += timer2_Tick;
|
||||
//
|
||||
// linkLabel2
|
||||
//
|
||||
linkLabel2.AutoSize = true;
|
||||
linkLabel2.LinkBehavior = LinkBehavior.NeverUnderline;
|
||||
linkLabel2.LinkColor = Color.Black;
|
||||
linkLabel2.Location = new Point(295, 13);
|
||||
linkLabel2.Name = "linkLabel2";
|
||||
linkLabel2.Size = new Size(16, 17);
|
||||
linkLabel2.TabIndex = 3;
|
||||
linkLabel2.TabStop = true;
|
||||
linkLabel2.Text = "R";
|
||||
linkLabel2.LinkClicked += linkLabel2_LinkClicked;
|
||||
//
|
||||
// Form1
|
||||
//
|
||||
AutoScaleDimensions = new SizeF(7F, 17F);
|
||||
@@ -186,9 +202,9 @@ partial class Form1
|
||||
groupBox4.ResumeLayout(false);
|
||||
groupBox4.PerformLayout();
|
||||
groupBox1.ResumeLayout(false);
|
||||
groupBox1.PerformLayout();
|
||||
groupBox2.ResumeLayout(false);
|
||||
groupBox3.ResumeLayout(false);
|
||||
groupBox3.PerformLayout();
|
||||
ResumeLayout(false);
|
||||
}
|
||||
|
||||
@@ -198,13 +214,15 @@ partial class Form1
|
||||
private GroupBox groupBox2;
|
||||
private GroupBox groupBox4;
|
||||
private RichTextBox logTextBox;
|
||||
private TextBox textBoxAccount;
|
||||
// private TextBox textBoxAccount;
|
||||
private Button buttonConnect;
|
||||
private Button buttonSend;
|
||||
private System.Windows.Forms.Timer timer1;
|
||||
private LinkLabel linkLabel1;
|
||||
private GroupBox groupBox3;
|
||||
private ComboBox comboBoxProtocol;
|
||||
private ComboBox comboBoxAccount;
|
||||
private Panel panel1;
|
||||
private System.Windows.Forms.Timer timer2;
|
||||
private LinkLabel linkLabel2;
|
||||
}
|
||||
@@ -25,7 +25,7 @@ public partial class Form1 : Form
|
||||
|
||||
private Scene _scene;
|
||||
|
||||
private string PathRoot;
|
||||
private string _nowAccount;
|
||||
|
||||
public Form1()
|
||||
{
|
||||
@@ -38,7 +38,11 @@ public partial class Form1 : Form
|
||||
comboBoxProtocol.DropDownStyle = ComboBoxStyle.DropDownList;
|
||||
_config ??= new Config();
|
||||
LoadConfig();
|
||||
textBoxAccount.Text = _config.Account;
|
||||
|
||||
if (_config.Accounts.Count > 0)
|
||||
{
|
||||
comboBoxAccount.Text = _config.Accounts.First();
|
||||
}
|
||||
|
||||
_scriptLoader = new ScriptLoader();
|
||||
|
||||
@@ -128,7 +132,6 @@ public partial class Form1 : Form
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region 登录
|
||||
|
||||
private Session? _session;
|
||||
@@ -293,7 +296,6 @@ public partial class Form1 : Form
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region Config
|
||||
|
||||
private void LoadConfig()
|
||||
@@ -305,7 +307,6 @@ public partial class Form1 : Form
|
||||
var cfg = JsonSerializer.Deserialize<Config>(jsonContent);
|
||||
if (cfg != null)
|
||||
{
|
||||
_config.Account = cfg.Account;
|
||||
_config.Server = cfg.Server;
|
||||
_config.Heartbeat = cfg.Heartbeat;
|
||||
_config.ProtocolScriptPath = cfg.ProtocolScriptPath;
|
||||
@@ -315,7 +316,8 @@ public partial class Form1 : Form
|
||||
|
||||
private void SaveConfig()
|
||||
{
|
||||
_config.Account = textBoxAccount.Text;
|
||||
var account = comboBoxAccount.Text;
|
||||
_config.Accounts.Add(account);
|
||||
var configPath = Path.Combine(Application.StartupPath, "Config.json");
|
||||
var json = JsonSerializer.Serialize(_config);
|
||||
File.WriteAllText(configPath, json);
|
||||
@@ -354,7 +356,6 @@ public partial class Form1 : Form
|
||||
|
||||
var index = comboBox.SelectedIndex;
|
||||
var proto = comboBox.SelectedItem?.ToString();
|
||||
Log.Info($"选中协议:{proto} Index={index}");
|
||||
SelectedProtocol(_allRequest[index]);
|
||||
}
|
||||
|
||||
@@ -381,7 +382,6 @@ public partial class Form1 : Form
|
||||
// 清除现有控件
|
||||
containerPanel.Controls.Clear();
|
||||
|
||||
|
||||
// 创建TableLayoutPanel
|
||||
var tablePanel = new TableLayoutPanel
|
||||
{
|
||||
@@ -421,7 +421,6 @@ public partial class Form1 : Form
|
||||
// 设置固定的行高
|
||||
int rowHeight = 30; // 每行固定高度
|
||||
|
||||
|
||||
// 添加属性和值输入框
|
||||
for (int i = 0; i < properties.Length; i++)
|
||||
{
|
||||
@@ -626,7 +625,9 @@ public partial class Form1 : Form
|
||||
|
||||
#region 协议内存缓存和加载
|
||||
|
||||
private string ProtocolPathPath = Path.Combine(Application.StartupPath, "Protocol");
|
||||
private string ProtocolPathPath => string.IsNullOrEmpty(_nowAccount)
|
||||
? Path.Combine(Application.StartupPath, "Protocol")
|
||||
: Path.Combine(Application.StartupPath, _nowAccount, "Protocol");
|
||||
|
||||
private void CacheProtocol(object obj)
|
||||
{
|
||||
@@ -710,16 +711,17 @@ public partial class Form1 : Form
|
||||
|
||||
private void buttonConnect_Click(object sender, EventArgs e)
|
||||
{
|
||||
_nowAccount = comboBoxAccount.Text;
|
||||
if (_session == null)
|
||||
{
|
||||
if (string.IsNullOrEmpty(textBoxAccount.Text))
|
||||
if (string.IsNullOrEmpty(comboBoxAccount.Text))
|
||||
{
|
||||
Log.Error("未输入账号");
|
||||
return;
|
||||
}
|
||||
|
||||
//登录
|
||||
OnLoginButtonClick(textBoxAccount.Text).Coroutine();
|
||||
OnLoginButtonClick(comboBoxAccount.Text).Coroutine();
|
||||
SwitchLoginButtonState();
|
||||
}
|
||||
else
|
||||
@@ -753,5 +755,10 @@ public partial class Form1 : Form
|
||||
}
|
||||
}
|
||||
|
||||
private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
||||
{
|
||||
Log.Info("重新加载协议");
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
@@ -123,4 +123,7 @@
|
||||
<metadata name="timer2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>109, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>430</value>
|
||||
</metadata>
|
||||
</root>
|
||||
@@ -23,6 +23,10 @@ public static class CoderLoader
|
||||
var interfaces = type.GetInterfaces();
|
||||
if (interfaces.Contains(reqTpe) && !type.IsAbstract)
|
||||
{
|
||||
if (interfaces.Contains(typeof(IRouteMessage)) && !interfaces.Contains(typeof(ICustomRouteRequest)))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
_requestTypes.Add(type);
|
||||
}
|
||||
}
|
||||
@@ -107,9 +111,9 @@ public static class CoderLoader
|
||||
{
|
||||
if (propertyInfo.Name == fieldName)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
PropertyInfo? field = type.GetProperty(fieldName); // 默认只查找公共实例字段
|
||||
|
||||
if (field == null)
|
||||
|
||||
Reference in New Issue
Block a user