Просмотр исходного кода

增加mono工程构建文件,在linux用xbuild测试通过

tanghai 11 лет назад
Родитель
Сommit
9b3b844e09

+ 55 - 0
CSharp-Mono/CSharp-Mono.sln

@@ -0,0 +1,55 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2012
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Game", "Game", "{1CB353E9-E0E7-42F1-B2C6-9028D6FC25D2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Model", "Game\Model\Model.csproj", "{01895B6C-E8E9-4F14-9497-E9DB426ADB11}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controller", "Game\Controller\Controller.csproj", "{86CD4CD0-D91D-4E44-B610-61565918FA14}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platform", "Platform", "{3B94631D-6166-4733-922D-8D7ED69510F2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common", "Platform\Common\Common.csproj", "{EF4373AF-66D4-4313-A882-60EF0AE4239A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TNet", "Platform\TNet\TNet.csproj", "{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UNet", "Platform\UNet\UNet.csproj", "{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{01895B6C-E8E9-4F14-9497-E9DB426ADB11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{01895B6C-E8E9-4F14-9497-E9DB426ADB11}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{01895B6C-E8E9-4F14-9497-E9DB426ADB11}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{01895B6C-E8E9-4F14-9497-E9DB426ADB11}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}.Release|Any CPU.Build.0 = Release|Any CPU
+		{86CD4CD0-D91D-4E44-B610-61565918FA14}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{86CD4CD0-D91D-4E44-B610-61565918FA14}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{86CD4CD0-D91D-4E44-B610-61565918FA14}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{86CD4CD0-D91D-4E44-B610-61565918FA14}.Release|Any CPU.Build.0 = Release|Any CPU
+		{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}.Release|Any CPU.Build.0 = Release|Any CPU
+		{EF4373AF-66D4-4313-A882-60EF0AE4239A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{EF4373AF-66D4-4313-A882-60EF0AE4239A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{EF4373AF-66D4-4313-A882-60EF0AE4239A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{EF4373AF-66D4-4313-A882-60EF0AE4239A}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(NestedProjects) = preSolution
+		{01895B6C-E8E9-4F14-9497-E9DB426ADB11} = {1CB353E9-E0E7-42F1-B2C6-9028D6FC25D2}
+		{86CD4CD0-D91D-4E44-B610-61565918FA14} = {1CB353E9-E0E7-42F1-B2C6-9028D6FC25D2}
+		{EF4373AF-66D4-4313-A882-60EF0AE4239A} = {3B94631D-6166-4733-922D-8D7ED69510F2}
+		{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1} = {3B94631D-6166-4733-922D-8D7ED69510F2}
+		{3A56E389-BB11-421C-9E11-EA88C5CA3EFC} = {3B94631D-6166-4733-922D-8D7ED69510F2}
+	EndGlobalSection
+	GlobalSection(MonoDevelopProperties) = preSolution
+		outputpath = Bin
+	EndGlobalSection
+EndGlobal

+ 15 - 0
CSharp-Mono/CSharp-Mono.userprefs

@@ -0,0 +1,15 @@
+<Properties StartupItem="Platform\Common\Common.csproj">
+  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
+  <MonoDevelop.Ide.Workbench ActiveDocument="d:\Source\Egametang\CSharp\Game\Model\Component\NetworkComponent.cs">
+    <Files>
+      <File FileName="d:\Source\Egametang\CSharp\Platform\Common\Helper\BigIntegerHelper.cs" Line="27" Column="27" />
+      <File FileName="d:\Source\Egametang\CSharp\Platform\Common\Helper\XmlHelper.cs" Line="15" Column="15" />
+      <File FileName="d:\Source\Egametang\CSharp\Platform\TNet\TChannel.cs" Line="8" Column="8" />
+      <File FileName="d:\Source\Egametang\CSharp\Game\Model\Component\NetworkComponent.cs" Line="7" Column="7" />
+    </Files>
+  </MonoDevelop.Ide.Workbench>
+  <MonoDevelop.Ide.DebuggingService.Breakpoints>
+    <BreakpointStore />
+  </MonoDevelop.Ide.DebuggingService.Breakpoints>
+  <MonoDevelop.Ide.DebuggingService.PinnedWatches />
+</Properties>

+ 95 - 0
CSharp-Mono/Game/Controller/Controller.csproj

@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{86CD4CD0-D91D-4E44-B610-61565918FA14}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>Controller</RootNamespace>
+    <AssemblyName>Controller</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\Bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\Bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="MongoDB.Driver">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Driver.dll</HintPath>
+    </Reference>
+    <Reference Include="MongoDB.Bson">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Bson.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\..\..\CSharp\Game\Controller\MessageType.cs">
+      <Link>MessageType.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\NodeType.cs">
+      <Link>NodeType.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\Action\BuffTimeoutAction.cs">
+      <Link>Action\BuffTimeoutAction.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\Action\MessageAction.cs">
+      <Link>Action\MessageAction.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\BehaviorTreeNode\Not.cs">
+      <Link>BehaviorTreeNode\Not.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\BehaviorTreeNode\Selector.cs">
+      <Link>BehaviorTreeNode\Selector.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\BehaviorTreeNode\Sequence.cs">
+      <Link>BehaviorTreeNode\Sequence.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\ConfigCategory\BuffCategory.cs">
+      <Link>ConfigCategory\BuffCategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\ConfigCategory\GlobalCategory.cs">
+      <Link>ConfigCategory\GlobalCategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\ConfigCategory\NodeCategory.cs">
+      <Link>ConfigCategory\NodeCategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\ConfigCategory\UnitCategory.cs">
+      <Link>ConfigCategory\UnitCategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\Event\AfterAddBuff.cs">
+      <Link>Event\AfterAddBuff.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\Factory\UnitFactory.cs">
+      <Link>Factory\UnitFactory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Controller\Message\CMsgLoginEvent.cs">
+      <Link>Message\CMsgLoginEvent.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <ProjectReference Include="..\..\Platform\Common\Common.csproj">
+      <Project>{EF4373AF-66D4-4313-A882-60EF0AE4239A}</Project>
+      <Name>Common</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Model\Model.csproj">
+      <Project>{01895B6C-E8E9-4F14-9497-E9DB426ADB11}</Project>
+      <Name>Model</Name>
+    </ProjectReference>
+  </ItemGroup>
+</Project>

+ 27 - 0
CSharp-Mono/Game/Controller/Properties/AssemblyInfo.cs

@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle ("Controller")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("tanghai")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion ("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+

+ 155 - 0
CSharp-Mono/Game/Model/Model.csproj

@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{01895B6C-E8E9-4F14-9497-E9DB426ADB11}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>Model</RootNamespace>
+    <AssemblyName>Model</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\Bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\Bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="MongoDB.Driver">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Driver.dll</HintPath>
+    </Reference>
+    <Reference Include="MongoDB.Bson">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Bson.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\..\..\CSharp\Game\Model\BehaviorTree\BehaviorTree.cs">
+      <Link>BehaviorTree\BehaviorTree.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\BehaviorTree\BehaviorTreeFactory.cs">
+      <Link>BehaviorTree\BehaviorTreeFactory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\BehaviorTree\BlackBoard.cs">
+      <Link>BehaviorTree\BlackBoard.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\BehaviorTree\Node.cs">
+      <Link>BehaviorTree\Node.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\BehaviorTree\NodeAttribute.cs">
+      <Link>BehaviorTree\NodeAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\ActorComponent.cs">
+      <Link>Component\ActorComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\BehaviorTreeComponent.cs">
+      <Link>Component\BehaviorTreeComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\BuffComponent.cs">
+      <Link>Component\BuffComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\ChannelUnitInfoComponent.cs">
+      <Link>Component\ChannelUnitInfoComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\ConfigComponent.cs">
+      <Link>Component\ConfigComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\EventComponent.cs">
+      <Link>Component\EventComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\FactoryComponent.cs">
+      <Link>Component\FactoryComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\NetworkComponent.cs">
+      <Link>Component\NetworkComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\TimerComponent.cs">
+      <Link>Component\TimerComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Component\UnitComponent.cs">
+      <Link>Component\UnitComponent.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Config\BuffConfig.cs">
+      <Link>Config\BuffConfig.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Config\GlobalConfig.cs">
+      <Link>Config\GlobalConfig.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Config\NodeConfig.cs">
+      <Link>Config\NodeConfig.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Config\UnitConfig.cs">
+      <Link>Config\UnitConfig.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Buff.cs">
+      <Link>Buff.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\BuffType.cs">
+      <Link>BuffType.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\EnvKey.cs">
+      <Link>EnvKey.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\EventAttribute.cs">
+      <Link>EventAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\EventType.cs">
+      <Link>EventType.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\FactoryAttribute.cs">
+      <Link>FactoryAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\IAssemblyLoader.cs">
+      <Link>IAssemblyLoader.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\IFactory.cs">
+      <Link>IFactory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\MessageAttribute.cs">
+      <Link>MessageAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\Unit.cs">
+      <Link>Unit.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\UnitType.cs">
+      <Link>UnitType.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Game\Model\World.cs">
+      <Link>World.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <Folder Include="BehaviorTree\" />
+    <Folder Include="Component\" />
+    <Folder Include="Config\" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\..\Platform\Common\Common.csproj">
+      <Project>{EF4373AF-66D4-4313-A882-60EF0AE4239A}</Project>
+      <Name>Common</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\Platform\TNet\TNet.csproj">
+      <Project>{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}</Project>
+      <Name>TNet</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\Platform\UNet\UNet.csproj">
+      <Project>{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}</Project>
+      <Name>UNet</Name>
+    </ProjectReference>
+  </ItemGroup>
+</Project>

+ 27 - 0
CSharp-Mono/Game/Model/Properties/AssemblyInfo.cs

@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle ("Model")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("tanghai")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion ("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+

+ 157 - 0
CSharp-Mono/Platform/Common/Common.csproj

@@ -0,0 +1,157 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{EF4373AF-66D4-4313-A882-60EF0AE4239A}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>Common</RootNamespace>
+    <AssemblyName>Common</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\Bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\Bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Numerics" />
+    <Reference Include="System.Xml" />
+    <Reference Include="MongoDB.Bson">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Bson.dll</HintPath>
+    </Reference>
+    <Reference Include="MongoDB.Driver">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Driver.dll</HintPath>
+    </Reference>
+    <Reference Include="NLog">
+      <HintPath>..\..\..\CSharp\packages\NLog.3.2.0.0\lib\net45\NLog.dll</HintPath>
+    </Reference>
+    <Reference Include="protobuf-net">
+      <HintPath>..\..\..\CSharp\packages\protobuf-net.2.0.0.668\lib\net40\protobuf-net.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\Component.cs">
+      <Link>Base\Component.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\Entity.cs">
+      <Link>Base\Entity.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\MultiMap.cs">
+      <Link>Base\MultiMap.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\Object.cs">
+      <Link>Base\Object.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\QueueDictionary.cs">
+      <Link>Base\QueueDictionary.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Base\TimerManager.cs">
+      <Link>Base\TimerManager.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Config\ACategory.cs">
+      <Link>Config\ACategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Config\AConfig.cs">
+      <Link>Config\AConfig.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Config\ConfigAttribute.cs">
+      <Link>Config\ConfigAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Config\ICategory.cs">
+      <Link>Config\ICategory.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Event\AEventAttribute.cs">
+      <Link>Event\AEventAttribute.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Event\Env.cs">
+      <Link>Event\Env.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Event\IEventAsync.cs">
+      <Link>Event\IEventAsync.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Event\IEventSync.cs">
+      <Link>Event\IEventSync.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\BigIntegerHelper.cs">
+      <Link>Helper\BigIntegerHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\ByteHelper.cs">
+      <Link>Helper\ByteHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\EnumHelper.cs">
+      <Link>Helper\EnumHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\LoaderHelper.cs">
+      <Link>Helper\LoaderHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\MongoHelper.cs">
+      <Link>Helper\MongoHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\ProtobufHelper.cs">
+      <Link>Helper\ProtobufHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\RandomHelper.cs">
+      <Link>Helper\RandomHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\StringHelper.cs">
+      <Link>Helper\StringHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\TimeHelper.cs">
+      <Link>Helper\TimeHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Helper\XmlHelper.cs">
+      <Link>Helper\XmlHelper.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Logger\ALogDecorater.cs">
+      <Link>Logger\ALogDecorater.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Logger\ILog.cs">
+      <Link>Logger\ILog.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Logger\Log.cs">
+      <Link>Logger\Log.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Logger\NLogAdapter.cs">
+      <Link>Logger\NLogAdapter.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Logger\StackInfoDecorater.cs">
+      <Link>Logger\StackInfoDecorater.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Network\AChannel.cs">
+      <Link>Network\AChannel.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\Common\Network\IService.cs">
+      <Link>Network\IService.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <Folder Include="Base\" />
+    <Folder Include="Config\" />
+    <Folder Include="Event\" />
+    <Folder Include="Helper\" />
+    <Folder Include="Logger\" />
+    <Folder Include="Network\" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\..\..\CSharp\Platform\Common\Helper\Packages.config">
+      <Link>Helper\Packages.config</Link>
+    </None>
+  </ItemGroup>
+</Project>

+ 27 - 0
CSharp-Mono/Platform/Common/Properties/AssemblyInfo.cs

@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle ("Common")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("tanghai")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion ("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+

+ 27 - 0
CSharp-Mono/Platform/TNet/Properties/AssemblyInfo.cs

@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle ("TNet")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("tanghai")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion ("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+

+ 78 - 0
CSharp-Mono/Platform/TNet/TNet.csproj

@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{AA3FD3AA-1835-42F4-9BE3-4A26D7CA8AB1}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>TNet</RootNamespace>
+    <AssemblyName>TNet</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\Bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\Bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="MongoDB.Driver">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Driver.dll</HintPath>
+    </Reference>
+    <Reference Include="MongoDB.Bson">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Bson.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\..\..\CSharp\Platform\TNet\IPoller.cs">
+      <Link>IPoller.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\PacketParser.cs">
+      <Link>PacketParser.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\TBuffer.cs">
+      <Link>TBuffer.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\TChannel.cs">
+      <Link>TChannel.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\TPoller.cs">
+      <Link>TPoller.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\TService.cs">
+      <Link>TService.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\TNet\TSocket.cs">
+      <Link>TSocket.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <None Include="..\..\..\CSharp\Platform\TNet\packages.config">
+      <Link>packages.config</Link>
+    </None>
+    <None Include="..\..\..\CSharp\Platform\TNet\TNet.csproj">
+      <Link>TNet.csproj</Link>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\Common\Common.csproj">
+      <Project>{EF4373AF-66D4-4313-A882-60EF0AE4239A}</Project>
+      <Name>Common</Name>
+    </ProjectReference>
+  </ItemGroup>
+</Project>

+ 27 - 0
CSharp-Mono/Platform/UNet/Properties/AssemblyInfo.cs

@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle ("UNet")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("tanghai")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion ("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+

+ 90 - 0
CSharp-Mono/Platform/UNet/UNet.csproj

@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{3A56E389-BB11-421C-9E11-EA88C5CA3EFC}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>UNet</RootNamespace>
+    <AssemblyName>UNet</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>..\..\Bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>..\..\Bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="MongoDB.Bson">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Bson.dll</HintPath>
+    </Reference>
+    <Reference Include="MongoDB.Driver">
+      <HintPath>..\..\..\CSharp\packages\mongocsharpdriver.1.10.0-rc1\lib\net35\MongoDB.Driver.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\..\..\CSharp\Platform\UNet\Library.cs">
+      <Link>Library.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\NativeMethods.cs">
+      <Link>NativeMethods.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\NativeStructs.cs">
+      <Link>NativeStructs.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UAddress.cs">
+      <Link>UAddress.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UChannel.cs">
+      <Link>UChannel.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UException.cs">
+      <Link>UException.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UPacket.cs">
+      <Link>UPacket.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UPoller.cs">
+      <Link>UPoller.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\UService.cs">
+      <Link>UService.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\USocket.cs">
+      <Link>USocket.cs</Link>
+    </Compile>
+    <Compile Include="..\..\..\CSharp\Platform\UNet\USocketManager.cs">
+      <Link>USocketManager.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <None Include="..\..\..\CSharp\Platform\UNet\packages.config">
+      <Link>packages.config</Link>
+    </None>
+    <None Include="..\..\..\CSharp\Platform\UNet\UNet.csproj">
+      <Link>UNet.csproj</Link>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\Common\Common.csproj">
+      <Project>{EF4373AF-66D4-4313-A882-60EF0AE4239A}</Project>
+      <Name>Common</Name>
+    </ProjectReference>
+  </ItemGroup>
+</Project>