浏览代码

update BO/Common fnd libs to .net7

Dalibor Votruba 2 年之前
父节点
当前提交
d3c65a8e2e
共有 30 个文件被更改,包括 143 次插入122 次删除
  1. 2 2
      Common/qdr.fnd.core.business/qdr.fnd.core.business.csproj
  2. 0 9
      Common/qdr.fnd.core.data.itfc/IPaging.cs
  3. 1 1
      Common/qdr.fnd.core.data.itfc/qdr.fnd.core.data.itfc.csproj
  4. 0 27
      Common/qdr.fnd.core.data/Extensions/PagingExt.cs
  5. 0 50
      Common/qdr.fnd.core.data/Paging.cs
  6. 8 4
      Common/qdr.fnd.core.data/Repository/EntityRepository.cs
  7. 3 3
      Common/qdr.fnd.core.data/qdr.fnd.core.data.csproj
  8. 3 3
      Common/qdr.fnd.core.nlog/qdr.fnd.core.nlog.csproj
  9. 1 1
      Common/qdr.fnd.core.qconsole/qdr.fnd.core.qconsole.csproj
  10. 2 2
      Common/qdr.fnd.core.web/qdr.fnd.core.web.csproj
  11. 2 1
      Common/qdr.fnd.core/Data/Error.cs
  12. 4 1
      Common/qdr.fnd.core/Data/Extensions/PagingExt.cs
  13. 3 1
      Common/qdr.fnd.core/Data/IResult.cs
  14. 3 1
      Common/qdr.fnd.core/Data/ITypedArgument.cs
  15. 3 1
      Common/qdr.fnd.core/Data/Result.cs
  16. 3 1
      Common/qdr.fnd.core/Json/ListConverter.cs
  17. 3 2
      Common/qdr.fnd.core/Logging/ConsoleLog.cs
  18. 2 0
      Common/qdr.fnd.core/Logging/ConsoleLogger.cs
  19. 2 1
      Common/qdr.fnd.core/Object/Extensions/ObjectExt.cs
  20. 3 1
      Common/qdr.fnd.core/Reflection/AttributeQuery.cs
  21. 4 1
      Common/qdr.fnd.core/Reflection/Extensions/TypeExt.cs
  22. 3 1
      Common/qdr.fnd.core/Reflection/QualifiedName.cs
  23. 5 1
      Common/qdr.fnd.core/Value/Extensions/EnumExt.cs
  24. 5 1
      Common/qdr.fnd.core/Value/Extensions/EnumerableExt.cs
  25. 4 1
      Common/qdr.fnd.core/Value/Extensions/ListExt.cs
  26. 4 1
      Common/qdr.fnd.core/Value/Extensions/TimeSpanExt.cs
  27. 4 1
      Common/qdr.fnd.core/Value/Formatters/HmsFormatter.cs
  28. 3 1
      Common/qdr.fnd.core/Value/ValueConverter.cs
  29. 2 2
      Common/qdr.fnd.core/qdr.fnd.core.csproj
  30. 61 0
      Common/qdr.fnd.sln

+ 2 - 2
Common/qdr.fnd.core.business/qdr.fnd.core.business.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>
@@ -15,7 +15,7 @@
   </ItemGroup>
 
   <ItemGroup>
-    <PackageReference Include="NLog" Version="4.7.11" />
+    <PackageReference Include="NLog" Version="5.2.4" />
   </ItemGroup>
 
 </Project>

+ 0 - 9
Common/qdr.fnd.core.data.itfc/IPaging.cs

@@ -1,9 +0,0 @@
-namespace Quadarax.Foundation.Core.Data.Interface
-{
-    public interface IPaging
-    {
-        int Page { get; }
-        int PageSize { get; }
-        bool IsDisabled { get; }
-    }
-}

+ 1 - 1
Common/qdr.fnd.core.data.itfc/qdr.fnd.core.data.itfc.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>

+ 0 - 27
Common/qdr.fnd.core.data/Extensions/PagingExt.cs

@@ -1,27 +0,0 @@
-using System.Collections.Generic;
-using System.Linq;
-
-namespace Quadarax.Foundation.Core.Data.Extensions
-{
-    public static class PagingExt
-    {
-        public static IQueryable<TEntity> Page<TEntity>(this IQueryable<TEntity> queryable, int? page, int? pageSize, int overlap = 0)
-        {
-            if (!(page.HasValue && pageSize.HasValue))
-                return queryable;
-
-            pageSize = pageSize.GetValueOrDefault(int.MaxValue);
-
-            return queryable.Skip(page.Value * pageSize.Value).Take(pageSize.Value + overlap);
-        }
-
-        public static IEnumerable<TEntity> Page<TEntity>(this IEnumerable<TEntity> queryable, int? page, int? pageSize, int overlap = 0)
-        {
-            if (!(page.HasValue && pageSize.HasValue))
-                return queryable;
-            pageSize = pageSize.GetValueOrDefault(int.MaxValue);
-
-            return queryable.Skip(page.Value * pageSize.Value).Take(pageSize.Value + overlap);
-        }
-    }
-}

+ 0 - 50
Common/qdr.fnd.core.data/Paging.cs

@@ -1,50 +0,0 @@
-using System;
-using Quadarax.Foundation.Core.Data.Interface;
-
-namespace Quadarax.Foundation.Core.Data
-{
-    public class Paging : IPaging
-    {
-        #region *** Properties ***
-        /// <summary>
-        /// Zero based index
-        /// </summary>
-        public int Page { get; }
-        /// <summary>
-        /// Number of items per page
-        /// </summary>
-        public int PageSize { get; }
-        /// <summary>
-        /// Defines if paging is disabled
-        /// </summary>
-        public bool IsDisabled { get;  }
-        #endregion
-
-        #region *** Constructors ***
-        public Paging(int page, int pageSize)
-        {
-            IsDisabled = pageSize == 0;
-
-            Page = page;
-            PageSize = pageSize;
-        }
-
-        public Paging()
-        {
-            IsDisabled = true;
-        }
-
-        public static Paging NoPaging()
-        {
-            return new Paging();
-        }
-        #endregion
-
-        #region *** Overrides ***
-        public override string ToString()
-        {
-            return $"Paging:IsDisabled={IsDisabled};Page={Page};PageSize={PageSize}";
-        }
-        #endregion
-    }
-}

+ 8 - 4
Common/qdr.fnd.core.data/Repository/EntityRepository.cs

@@ -6,7 +6,6 @@ using Microsoft.EntityFrameworkCore;
 using Quadarax.Foundation.Core.Data.Domain;
 using Quadarax.Foundation.Core.Data.Entity;
 using Quadarax.Foundation.Core.Data.Extensions;
-using Quadarax.Foundation.Core.Data.Interface;
 using Quadarax.Foundation.Core.Data.Interface.Domain;
 using Quadarax.Foundation.Core.Data.Interface.Repository;
 
@@ -29,7 +28,7 @@ namespace Quadarax.Foundation.Core.Data.Repository
             //_dbSet = domain.GetDbSet<DbSet<TEntity>>();
         }
 
-        public virtual IQueryable<TEntity> Query(IPaging paging,bool usingUncommited=false)
+        protected virtual IQueryable<TEntity> OnQuery(IPaging paging,bool usingUncommited=false)
         {
             var local = DbSetInstance.Local.Page(paging.IsDisabled ? (int?) null : paging.Page, paging.PageSize).AsQueryable();
             if (local.Any() && usingUncommited)
@@ -40,14 +39,19 @@ namespace Quadarax.Foundation.Core.Data.Repository
             return DbSetInstance.Page(paging.IsDisabled ? (int?) null : paging.Page, paging.PageSize).MultiInclude(DefaultIncludes.ToArray());
         }
 
+        public IQueryable<TEntity> Query(IPaging paging, bool usingUncomited = false)
+        {
+            return OnQuery(paging, usingUncomited);
+        }
+
         public virtual TEntity Get(TKey id)
         {
-            return Query(new Paging()).MultiInclude(DefaultIncludes.ToArray()).FirstOrDefault(x => Equals(x.Id, id));
+            return Query(Paging.NoPaging).MultiInclude(DefaultIncludes.ToArray()).FirstOrDefault(x => Equals(x.Id, id));
         }
 
         public virtual IQueryable<TEntity> Get(IEnumerable<TKey> ids)
         {
-            return Query(new Paging()).Where(x => ids.Contains(x.Id));
+            return Query(Paging.NoPaging).Where(x => ids.Contains(x.Id));
         }
 
         public virtual TEntity Set(TEntity entity)

+ 3 - 3
Common/qdr.fnd.core.data/qdr.fnd.core.data.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>
@@ -10,8 +10,8 @@
   </PropertyGroup>
 
   <ItemGroup>
-    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.11" />
-    <PackageReference Include="System.Data.SqlClient" Version="4.8.3" />
+    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.11" />
+    <PackageReference Include="System.Data.SqlClient" Version="4.8.5" />
   </ItemGroup>
 
   <ItemGroup>

+ 3 - 3
Common/qdr.fnd.core.nlog/qdr.fnd.core.nlog.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>
@@ -10,8 +10,8 @@
   </PropertyGroup>
 
   <ItemGroup>
-    <PackageReference Include="NLog" Version="4.7.13" />
-    <PackageReference Include="NLog.Extensions.Logging" Version="1.7.4" />
+    <PackageReference Include="NLog" Version="5.2.4" />
+    <PackageReference Include="NLog.Extensions.Logging" Version="5.3.4" />
   </ItemGroup>
 
   <ItemGroup>

+ 1 - 1
Common/qdr.fnd.core.qconsole/qdr.fnd.core.qconsole.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>

+ 2 - 2
Common/qdr.fnd.core.web/qdr.fnd.core.web.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>
@@ -11,7 +11,7 @@
 
   <ItemGroup>
     <PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.2.5" />
-    <PackageReference Include="NLog" Version="4.7.11" />
+    <PackageReference Include="NLog" Version="5.2.4" />
   </ItemGroup>
 
   <ItemGroup>

+ 2 - 1
Common/qdr.fnd.core/Data/Error.cs

@@ -1,4 +1,5 @@
-using System.Text;
+using System;
+using System.Text;
 using Quadarax.Foundation.Core.Exceptions;
 
 namespace Quadarax.Foundation.Core.Data

+ 4 - 1
Common/qdr.fnd.core/Data/Extensions/PagingExt.cs

@@ -1,4 +1,7 @@
-namespace Quadarax.Foundation.Core.Data.Extensions
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Quadarax.Foundation.Core.Data.Extensions
 {
     public static class PagingExt
     {

+ 3 - 1
Common/qdr.fnd.core/Data/IResult.cs

@@ -1,4 +1,6 @@
-namespace Quadarax.Foundation.Core.Data
+using System.Collections.Generic;
+
+namespace Quadarax.Foundation.Core.Data
 {
     /// <summary>
     /// Represents structure of result state

+ 3 - 1
Common/qdr.fnd.core/Data/ITypedArgument.cs

@@ -1,4 +1,6 @@
-namespace Quadarax.Foundation.Core.Data;
+using System;
+
+namespace Quadarax.Foundation.Core.Data;
 
 public interface ITypedArgument
 {

+ 3 - 1
Common/qdr.fnd.core/Data/Result.cs

@@ -1,4 +1,6 @@
-using Quadarax.Foundation.Core.Value.Extensions;
+using System;
+using System.Collections.Generic;
+using Quadarax.Foundation.Core.Value.Extensions;
 
 namespace Quadarax.Foundation.Core.Data
 {

+ 3 - 1
Common/qdr.fnd.core/Json/ListConverter.cs

@@ -1,4 +1,6 @@
-using System.Text.Json;
+using System;
+using System.Collections.Generic;
+using System.Text.Json;
 using System.Text.Json.Serialization;
 
 namespace Quadarax.Foundation.Core.Json

+ 3 - 2
Common/qdr.fnd.core/Logging/ConsoleLog.cs

@@ -1,4 +1,5 @@
-using Quadarax.Foundation.Core.Console;
+using System;
+using Quadarax.Foundation.Core.Console;
 
 namespace Quadarax.Foundation.Core.Logging
 {
@@ -29,7 +30,7 @@ namespace Quadarax.Foundation.Core.Logging
         public void Log(LogSeverityEnum severity, string message)
         {
             var now = DateTime.Now;
-            var thNum = Thread.CurrentThread.ManagedThreadId;
+            var thNum = System.Threading.Thread.CurrentThread.ManagedThreadId;
 
             var final = $"[{severity}:{now.ToLongTimeString()}:{thNum}]#{_typeName}: {message}";
 

+ 2 - 0
Common/qdr.fnd.core/Logging/ConsoleLogger.cs

@@ -1,4 +1,6 @@
 
+using System;
+
 namespace Quadarax.Foundation.Core.Logging
 {
     public class ConsoleLogger : ILogger

+ 2 - 1
Common/qdr.fnd.core/Object/Extensions/ObjectExt.cs

@@ -1,11 +1,12 @@
 using System.Collections;
+using System.Collections.Generic;
 using Quadarax.Foundation.Core.Reflection.Extensions;
 
 namespace Quadarax.Foundation.Core.Object.Extensions
 {
     public static class ObjectExt
     {
-        public static IDictionary<string, object?> GetAllPropertyValues(this object? obj,string? indentPrefix = null)
+        public static IDictionary<string, object> GetAllPropertyValues(this object? obj,string? indentPrefix = null)
         {
             var props = new Dictionary<string, object?>();
             if (obj == null)

+ 3 - 1
Common/qdr.fnd.core/Reflection/AttributeQuery.cs

@@ -1,4 +1,6 @@
-using System.Reflection;
+using System;
+using System.Collections.Generic;
+using System.Reflection;
 
 namespace Quadarax.Foundation.Core.Reflection
 {

+ 4 - 1
Common/qdr.fnd.core/Reflection/Extensions/TypeExt.cs

@@ -1,4 +1,7 @@
-using System.Reflection;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
 
 namespace Quadarax.Foundation.Core.Reflection.Extensions
 {

+ 3 - 1
Common/qdr.fnd.core/Reflection/QualifiedName.cs

@@ -1,4 +1,6 @@
-using System.Reflection;
+using System;
+using System.Linq;
+using System.Reflection;
 using Quadarax.Foundation.Core.Reflection.Extensions;
 
 namespace Quadarax.Foundation.Core.Reflection

+ 5 - 1
Common/qdr.fnd.core/Value/Extensions/EnumExt.cs

@@ -1,4 +1,8 @@
-namespace Quadarax.Foundation.Core.Business.Processor.Dependencies.Value.Extensions
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Quadarax.Foundation.Core.Value.Extensions
 {
     public static class EnumExt
     {

+ 5 - 1
Common/qdr.fnd.core/Value/Extensions/EnumerableExt.cs

@@ -1,4 +1,8 @@
-namespace Quadarax.Foundation.Core.Value.Extensions
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Quadarax.Foundation.Core.Value.Extensions
 {
     public static class EnumerableExt
     {

+ 4 - 1
Common/qdr.fnd.core/Value/Extensions/ListExt.cs

@@ -1,4 +1,7 @@
-namespace Quadarax.Foundation.Core.Value.Extensions
+using System;
+using System.Collections.Generic;
+
+namespace Quadarax.Foundation.Core.Value.Extensions
 {
     public static class ListExt
     {

+ 4 - 1
Common/qdr.fnd.core/Value/Extensions/TimeSpanExt.cs

@@ -1,4 +1,7 @@
-using Quadarax.Foundation.Core.Value.Formatters;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Quadarax.Foundation.Core.Value.Formatters;
 
 namespace Quadarax.Foundation.Core.Value.Extensions
 {

+ 4 - 1
Common/qdr.fnd.core/Value/Formatters/HmsFormatter.cs

@@ -1,4 +1,7 @@
-namespace Quadarax.Foundation.Core.Value.Formatters
+using System;
+using System.Collections.Generic;
+
+namespace Quadarax.Foundation.Core.Value.Formatters
 {
     /// <summary>
     /// Formatter for forms of seconds/hours/day

+ 3 - 1
Common/qdr.fnd.core/Value/ValueConverter.cs

@@ -1,4 +1,6 @@
-namespace Quadarax.Foundation.Core.Value
+using System;
+
+namespace Quadarax.Foundation.Core.Value
 {
     public static class ValueConverter
     {

+ 2 - 2
Common/qdr.fnd.core/qdr.fnd.core.csproj

@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net7.0</TargetFramework>
     <SignAssembly>true</SignAssembly>
     <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
     <DelaySign>false</DelaySign>
@@ -15,7 +15,7 @@
   </ItemGroup>
 
   <ItemGroup>
-    <PackageReference Include="System.IO.Abstractions" Version="13.2.47" />
+    <PackageReference Include="System.IO.Abstractions" Version="19.2.69" />
   </ItemGroup>
 
 </Project>

+ 61 - 0
Common/qdr.fnd.sln

@@ -0,0 +1,61 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.7.34031.279
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core", "qdr.fnd.core\qdr.fnd.core.csproj", "{1D5767E4-1FB3-40E3-9BB0-C3D56C72AF96}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.business", "qdr.fnd.core.business\qdr.fnd.core.business.csproj", "{D78E7DD6-8AFE-4FEF-AC48-4EDA4C13E937}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.data", "qdr.fnd.core.data\qdr.fnd.core.data.csproj", "{FCF103A9-9387-4270-AAB5-5076A696CC09}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.data.itfc", "qdr.fnd.core.data.itfc\qdr.fnd.core.data.itfc.csproj", "{7F4727DF-6667-4735-A7F1-974A48CE2548}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.nlog", "qdr.fnd.core.nlog\qdr.fnd.core.nlog.csproj", "{289B7B9F-96A0-485E-A1A8-D97E16B7F04A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.qconsole", "qdr.fnd.core.qconsole\qdr.fnd.core.qconsole.csproj", "{69C42E2A-669D-4F23-902F-DCBBD95A3C6E}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.web", "qdr.fnd.core.web\qdr.fnd.core.web.csproj", "{E409FF71-FAC0-492A-9C9C-2DCCB52055D9}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{1D5767E4-1FB3-40E3-9BB0-C3D56C72AF96}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{1D5767E4-1FB3-40E3-9BB0-C3D56C72AF96}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{1D5767E4-1FB3-40E3-9BB0-C3D56C72AF96}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{1D5767E4-1FB3-40E3-9BB0-C3D56C72AF96}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D78E7DD6-8AFE-4FEF-AC48-4EDA4C13E937}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{D78E7DD6-8AFE-4FEF-AC48-4EDA4C13E937}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D78E7DD6-8AFE-4FEF-AC48-4EDA4C13E937}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{D78E7DD6-8AFE-4FEF-AC48-4EDA4C13E937}.Release|Any CPU.Build.0 = Release|Any CPU
+		{FCF103A9-9387-4270-AAB5-5076A696CC09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{FCF103A9-9387-4270-AAB5-5076A696CC09}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{FCF103A9-9387-4270-AAB5-5076A696CC09}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{FCF103A9-9387-4270-AAB5-5076A696CC09}.Release|Any CPU.Build.0 = Release|Any CPU
+		{7F4727DF-6667-4735-A7F1-974A48CE2548}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{7F4727DF-6667-4735-A7F1-974A48CE2548}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{7F4727DF-6667-4735-A7F1-974A48CE2548}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{7F4727DF-6667-4735-A7F1-974A48CE2548}.Release|Any CPU.Build.0 = Release|Any CPU
+		{289B7B9F-96A0-485E-A1A8-D97E16B7F04A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{289B7B9F-96A0-485E-A1A8-D97E16B7F04A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{289B7B9F-96A0-485E-A1A8-D97E16B7F04A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{289B7B9F-96A0-485E-A1A8-D97E16B7F04A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{69C42E2A-669D-4F23-902F-DCBBD95A3C6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{69C42E2A-669D-4F23-902F-DCBBD95A3C6E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{69C42E2A-669D-4F23-902F-DCBBD95A3C6E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{69C42E2A-669D-4F23-902F-DCBBD95A3C6E}.Release|Any CPU.Build.0 = Release|Any CPU
+		{E409FF71-FAC0-492A-9C9C-2DCCB52055D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{E409FF71-FAC0-492A-9C9C-2DCCB52055D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{E409FF71-FAC0-492A-9C9C-2DCCB52055D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{E409FF71-FAC0-492A-9C9C-2DCCB52055D9}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {89C7D7E9-6E4B-4A30-A6C8-FDE75DFDEB1B}
+	EndGlobalSection
+EndGlobal