实例介绍
Professional C# 7 and .NET Core 2.0是C#编程的经典专著的最新版本(英文pdf版),本人收集下载整理了有关各章的源码一并上载于此
【实例截图】
【核心代码】
.
├── Professional C# 7 and .NET Core 2.0(pdf code)
│ └── Professional C# 7 and .NET Core 2.0 Code
│ ├── 01_code
│ │ ├── HelloWorld
│ │ │ ├── HelloWorld.csproj
│ │ │ └── Program.cs
│ │ ├── Readme.md
│ │ ├── SelfContainedHelloWorld
│ │ │ ├── Program.cs
│ │ │ └── SelfContainedHelloWorld.csproj
│ │ ├── VSHelloWorld
│ │ │ ├── VSHelloWorld
│ │ │ │ ├── Program.cs
│ │ │ │ └── VSHelloWorld.csproj
│ │ │ └── VSHelloWorld.sln
│ │ └── WebApp
│ │ ├── Controllers
│ │ │ └── HomeController.cs
│ │ ├── Models
│ │ │ └── ErrorViewModel.cs
│ │ ├── Program.cs
│ │ ├── Startup.cs
│ │ ├── Views
│ │ │ ├── Home
│ │ │ ├── Shared
│ │ │ ├── _ViewImports.cshtml
│ │ │ └── _ViewStart.cshtml
│ │ ├── WebApp.csproj
│ │ ├── appsettings.Development.json
│ │ ├── appsettings.json
│ │ ├── bundleconfig.json
│ │ └── wwwroot
│ │ ├── css
│ │ ├── favicon.ico
│ │ ├── images
│ │ ├── js
│ │ └── lib
│ ├── 02_code
│ │ ├── CoreCSharpSamples
│ │ │ ├── ArgumentsSample
│ │ │ │ ├── ArgumentsSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── CoreCSharpSamples.sln
│ │ │ ├── ForLoop
│ │ │ │ ├── ForLoop.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── HelloWorldApp
│ │ │ │ ├── HelloWorldApp.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── IfStatement
│ │ │ │ ├── IfStatement.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MathClient
│ │ │ │ ├── MathClient.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MathLib
│ │ │ │ ├── Calculator.cs
│ │ │ │ └── MathLib.csproj
│ │ │ ├── NamespaceSample
│ │ │ │ ├── NamespaceSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── StringSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── StringSample.csproj
│ │ │ ├── UsingNumbers
│ │ │ │ ├── Program.cs
│ │ │ │ └── UsingNumbers.csproj
│ │ │ ├── VariableScopeSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── VariableScopeSample.csproj
│ │ │ ├── VariableScopeSample2
│ │ │ │ ├── Program.cs
│ │ │ │ └── VariableScopeSample2.csproj
│ │ │ ├── VariableScopeSample3
│ │ │ │ ├── Program.cs
│ │ │ │ └── VariableScopeSample3.csproj
│ │ │ └── VariablesSample
│ │ │ ├── Program.cs
│ │ │ └── VariablesSample.csproj
│ │ └── Readme.md
│ ├── 03_code
│ │ ├── ObjectsAndTypes
│ │ │ ├── ClassesSample
│ │ │ │ ├── ClassesSample.csproj
│ │ │ │ ├── Person.cs
│ │ │ │ └── Program.cs
│ │ │ ├── EnumSample
│ │ │ │ ├── Color.cs
│ │ │ │ ├── DaysOfWeek.cs
│ │ │ │ ├── EnumSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ExtensionMethods
│ │ │ │ ├── ExtensionMethods.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── InParameterSample
│ │ │ │ ├── ARefType.cs
│ │ │ │ ├── AValueType.cs
│ │ │ │ ├── InParameterSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MathSample
│ │ │ │ ├── Math.cs
│ │ │ │ ├── MathSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MethodSample
│ │ │ │ ├── Math.cs
│ │ │ │ ├── MethodSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ObjectsAndTypes.sln
│ │ │ ├── OutKeywordSample
│ │ │ │ ├── OutKeywordSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── PassingByValueAndReference
│ │ │ │ ├── PassingByValueAndReference.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ReadonlyStructSample
│ │ │ │ ├── Dimensions.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── ReadonlyStructSample.csproj
│ │ │ ├── RefStructSample
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RefStructSample.csproj
│ │ │ │ └── ValueTypeOnly.cs
│ │ │ ├── StaticConstructorSample
│ │ │ │ ├── Color.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── StaticConstructorSample.csproj
│ │ │ │ └── UserPreferences.cs
│ │ │ └── StructsSample
│ │ │ ├── Dimensions.cs
│ │ │ ├── Program.cs
│ │ │ └── StructsSample.csproj
│ │ └── Readme.md
│ ├── 04_code
│ │ ├── OOSamples
│ │ │ ├── InheritanceWithConstructors
│ │ │ │ ├── ConcreteShapes.cs
│ │ │ │ ├── InheritanceWithConstructors.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── Shape.cs
│ │ │ ├── OOSamples.sln
│ │ │ ├── UsingInterfaces
│ │ │ │ ├── IBankAccount.cs
│ │ │ │ ├── ITransferBankAccount.cs
│ │ │ │ ├── JupiterBank.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── UsingInterfaces.csproj
│ │ │ │ └── VenusBank.cs
│ │ │ └── VirtualMethods
│ │ │ ├── ConcreteShapes.cs
│ │ │ ├── Program.cs
│ │ │ ├── Shape.cs
│ │ │ └── VirtualMethods.csproj
│ │ └── Readme.md
│ ├── 05_code
│ │ ├── GenericsSamples
│ │ │ ├── DocumentManager
│ │ │ │ ├── Document.cs
│ │ │ │ ├── DocumentManager.cs
│ │ │ │ ├── DocumentManager.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── GenericMethods
│ │ │ │ ├── Account.cs
│ │ │ │ ├── Algorithms.cs
│ │ │ │ ├── GenericMethods.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── GenericsSamples.sln
│ │ │ ├── LinkedListObjects
│ │ │ │ ├── LinkedList.cs
│ │ │ │ ├── LinkedListNode.cs
│ │ │ │ ├── LinkedListObjects.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── LinkedListSample
│ │ │ │ ├── LinkedList.cs
│ │ │ │ ├── LinkedListNode.cs
│ │ │ │ ├── LinkedListSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── Specialization
│ │ │ │ ├── Program.cs
│ │ │ │ └── Specialization.csproj
│ │ │ └── Variance
│ │ │ ├── IDisplay.cs
│ │ │ ├── IIndex.cs
│ │ │ ├── Program.cs
│ │ │ ├── Rectangle.cs
│ │ │ ├── RectangleCollection.cs
│ │ │ ├── Shape.cs
│ │ │ ├── ShapeDisplay.cs
│ │ │ └── Variance.csproj
│ │ └── Readme.md
│ ├── 06_code
│ │ ├── OperatorsAndCasts
│ │ │ ├── BinaryCalculations
│ │ │ │ ├── BinaryCalculations.csproj
│ │ │ │ ├── BinaryExtensions.cs
│ │ │ │ └── Program.cs
│ │ │ ├── CastingSample
│ │ │ │ ├── CastingSample.csproj
│ │ │ │ ├── Currency.cs
│ │ │ │ └── Program.cs
│ │ │ ├── CustomIndexerSample
│ │ │ │ ├── CustomIndexerSample.csproj
│ │ │ │ ├── Person.cs
│ │ │ │ ├── PersonCollection.cs
│ │ │ │ └── Program.cs
│ │ │ ├── NullableTypesSample
│ │ │ │ ├── NullableTypesSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── OperatorOverloadingSample
│ │ │ │ ├── OperatorOverloadingSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── Vector.cs
│ │ │ ├── OperatorOverloadingSample2
│ │ │ │ ├── OperatorOverloadingSample2.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── Vector.cs
│ │ │ ├── OperatorsAndCasts.sln
│ │ │ ├── OperatorsSample
│ │ │ │ ├── Address.cs
│ │ │ │ ├── OperatorsSample.csproj
│ │ │ │ ├── Person.cs
│ │ │ │ ├── Point.cs
│ │ │ │ └── Program.cs
│ │ │ └── OverloadingComparisonSample
│ │ │ ├── OverloadingComparisonSample.csproj
│ │ │ ├── Program.cs
│ │ │ └── Vector.cs
│ │ └── Readme.md
│ ├── 07_code
│ │ ├── ArraysSamples
│ │ │ ├── ArrayPoolSample
│ │ │ │ ├── ArrayPoolSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ArraysSamples.sln
│ │ │ ├── SimpleArrays
│ │ │ │ ├── Person.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── SimpleArrays.csproj
│ │ │ ├── SortingSample
│ │ │ │ ├── Person.cs
│ │ │ │ ├── PersonComparer.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── SortingSample.csproj
│ │ │ ├── SpanSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── SpanSample.csproj
│ │ │ ├── StructuralComparison
│ │ │ │ ├── Person.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── StructuralComparison.csproj
│ │ │ └── YieldSample
│ │ │ ├── GameMove.cs
│ │ │ ├── MusicTitles.cs
│ │ │ ├── Program.cs
│ │ │ └── YieldSample.csproj
│ │ └── Readme.md
│ ├── 08_code
│ │ ├── DelegatesAndEventsSamples
│ │ │ ├── AnonymousMethods
│ │ │ │ ├── AnonymousMethods.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── BubbleSorter
│ │ │ │ ├── BubbleSorter.cs
│ │ │ │ ├── BubbleSorter.csproj
│ │ │ │ ├── Employee.cs
│ │ │ │ └── Program.cs
│ │ │ ├── DelegatesAndEventsSamples.sln
│ │ │ ├── EventsSample
│ │ │ │ ├── CarDealer.cs
│ │ │ │ ├── Consumer.cs
│ │ │ │ ├── EventsSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── GetAStringDemo
│ │ │ │ ├── Currency.cs
│ │ │ │ ├── GetAStringDemo.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── LambdaExpressions
│ │ │ │ ├── LambdaExpressions.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MulticastDelegates
│ │ │ │ ├── MathOperations.cs
│ │ │ │ ├── MulticastDelegates.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MulticastDelegatesUsingInvocationList
│ │ │ │ ├── MulticastDelegatesUsingInvocationList.csproj
│ │ │ │ └── Program.cs
│ │ │ └── SimpleDelegates
│ │ │ ├── MathOperations.cs
│ │ │ ├── Program.cs
│ │ │ └── SimpleDelegates.csproj
│ │ └── Readme.md
│ ├── 09_code
│ │ ├── Readme.md
│ │ ├── RegularExpressionPlayground
│ │ │ ├── Program.cs
│ │ │ └── RegularExpressionPlayground.csproj
│ │ ├── SpanWithStrings
│ │ │ ├── Program.cs
│ │ │ └── SpanWithStrings.csproj
│ │ ├── StringFormats
│ │ │ ├── Person.cs
│ │ │ ├── Program.cs
│ │ │ └── StringFormats.csproj
│ │ ├── StringSample
│ │ │ ├── Program.cs
│ │ │ └── StringSample.csproj
│ │ └── StringsAndRegularExpressions.sln
│ ├── 10_code
│ │ ├── Collections.sln
│ │ ├── DictionarySample
│ │ │ ├── DictionarySample.csproj
│ │ │ ├── Employee.cs
│ │ │ ├── EmployeeId.cs
│ │ │ └── Program.cs
│ │ ├── LinkedListSample
│ │ │ ├── Document.cs
│ │ │ ├── LinkedListSample.csproj
│ │ │ ├── PriorityDocumentManager.cs
│ │ │ └── Program.cs
│ │ ├── ListSamples
│ │ │ ├── FindCountry.cs
│ │ │ ├── ListSamples.csproj
│ │ │ ├── Program.cs
│ │ │ ├── Racer.cs
│ │ │ └── RacerComparer.cs
│ │ ├── LookupSample
│ │ │ ├── LookupSample.csproj
│ │ │ ├── Program.cs
│ │ │ └── Racer.cs
│ │ ├── QueueSample
│ │ │ ├── Document.cs
│ │ │ ├── DocumentManager.cs
│ │ │ ├── ProcessDocuments.cs
│ │ │ ├── Program.cs
│ │ │ └── QueueSample.csproj
│ │ ├── Readme.md
│ │ ├── SetSample
│ │ │ ├── Program.cs
│ │ │ └── SetSample.csproj
│ │ ├── SortedListSample
│ │ │ ├── Program.cs
│ │ │ └── SortedListSample.csproj
│ │ └── StackSample
│ │ ├── Program.cs
│ │ └── StackSample.csproj
│ ├── 11_code
│ │ ├── Readme.md
│ │ └── SpecialCollections
│ │ ├── BitArraySample
│ │ │ ├── BitArrayExtensions.cs
│ │ │ ├── BitArraySample.csproj
│ │ │ ├── NuGet.config
│ │ │ └── Program.cs
│ │ ├── BitVectorSample
│ │ │ ├── BinaryExtensions.cs
│ │ │ ├── BitVectorSample.csproj
│ │ │ ├── NuGet.config
│ │ │ └── Program.cs
│ │ ├── ImmutableCollectionSample
│ │ │ ├── Account.cs
│ │ │ ├── ImmutableCollectionSample.csproj
│ │ │ ├── NuGet.config
│ │ │ └── Program.cs
│ │ ├── ObservableCollectionSample
│ │ │ ├── NuGet.config
│ │ │ ├── ObservableCollectionSample.csproj
│ │ │ └── Program.cs
│ │ ├── PipelineSample
│ │ │ ├── ColoredConsole.cs
│ │ │ ├── Info.cs
│ │ │ ├── NuGet.config
│ │ │ ├── PipelineSample.csproj
│ │ │ ├── PipelineStages.cs
│ │ │ └── Program.cs
│ │ └── SpecialCollections.sln
│ ├── 12_code
│ │ ├── LinqSamples
│ │ │ ├── DataLib
│ │ │ │ ├── Championship.cs
│ │ │ │ ├── DataLib.csproj
│ │ │ │ ├── Formula1.cs
│ │ │ │ ├── Racer.cs
│ │ │ │ └── Team.cs
│ │ │ ├── EnumerableSample
│ │ │ │ ├── CompoundFromSamples.cs
│ │ │ │ ├── EnumerableSample.csproj
│ │ │ │ ├── FilteringSamples.cs
│ │ │ │ ├── GroupingSamples.cs
│ │ │ │ ├── JoinSamples.cs
│ │ │ │ ├── LinqSamples.cs
│ │ │ │ ├── NuGet.config
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RacerInfo.cs
│ │ │ │ ├── SortingSamples.cs
│ │ │ │ └── StringExtensions.cs
│ │ │ ├── ExpressionTreeSample
│ │ │ │ ├── ExpressionTreeSample.csproj
│ │ │ │ ├── NuGet.config
│ │ │ │ └── Program.cs
│ │ │ ├── LinqIntro
│ │ │ │ ├── LinqIntro.csproj
│ │ │ │ ├── NuGet.config
│ │ │ │ └── Program.cs
│ │ │ ├── LinqSamples.sln
│ │ │ └── ParallelLinqSample
│ │ │ ├── NuGet.config
│ │ │ ├── ParallelLinqSample.csproj
│ │ │ └── Program.cs
│ │ └── Readme.md
│ ├── 13_code
│ │ ├── DataLib
│ │ │ ├── Championship.cs
│ │ │ ├── DataLib.csproj
│ │ │ ├── Formula1.cs
│ │ │ ├── Racer.cs
│ │ │ └── Team.cs
│ │ ├── ExpressionBodiedMembers
│ │ │ ├── ExpressionBodiedMembers.csproj
│ │ │ ├── Person.cs
│ │ │ ├── Program.cs
│ │ │ └── StringArrayExtensions.cs
│ │ ├── FunctionalProgramming.sln
│ │ ├── LambdaExpressions
│ │ │ ├── LambdaExpressions.csproj
│ │ │ ├── NuGet.config
│ │ │ ├── Person.cs
│ │ │ ├── Program.cs
│ │ │ └── StringArrayExtensions.cs
│ │ ├── LocalFunctions
│ │ │ ├── Algorithms.cs
│ │ │ ├── EnumerableExtensions.cs
│ │ │ ├── LocalFunctions.csproj
│ │ │ └── Program.cs
│ │ ├── PatternMatching
│ │ │ ├── HttpManager.cs
│ │ │ ├── PatternMatching.csproj
│ │ │ ├── Person.cs
│ │ │ └── Program.cs
│ │ ├── Readme.md
│ │ ├── Tuples
│ │ │ ├── NuGet.config
│ │ │ ├── Person.cs
│ │ │ ├── Program.cs
│ │ │ ├── RacerExtensions.cs
│ │ │ └── Tuples.csproj
│ │ ├── TuplesLib
│ │ │ ├── Math.cs
│ │ │ └── TuplesLib.csproj
│ │ └── UsingStatic
│ │ ├── FunctionalExtensions.cs
│ │ ├── Person.cs
│ │ ├── Program.cs
│ │ ├── Resource.cs
│ │ ├── StringArrayExtensions.cs
│ │ └── UsingStatic.csproj
│ ├── 14_code
│ │ ├── ErrorsAndExceptions
│ │ │ ├── CallerInformation
│ │ │ │ ├── CallerInformation.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ErrorsAndExceptions.sln
│ │ │ ├── ExceptionFilters
│ │ │ │ ├── ExceptionFilters.csproj
│ │ │ │ ├── MyCustomException.cs
│ │ │ │ └── Program.cs
│ │ │ ├── RethrowExceptions
│ │ │ │ ├── MyCustomException.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── RethrowExceptions.csproj
│ │ │ ├── SimpleExceptions
│ │ │ │ ├── Program.cs
│ │ │ │ └── SimpleExceptions.csproj
│ │ │ └── SolicitColdCall
│ │ │ ├── ColdCallFileFormatException.cs
│ │ │ ├── ColdCallFileReader.cs
│ │ │ ├── Program.cs
│ │ │ ├── SalesSpyFoundException.cs
│ │ │ ├── SolicitColdCall.csproj
│ │ │ ├── UnexpectedException.cs
│ │ │ ├── people.txt
│ │ │ └── people2.txt
│ │ └── Readme.md
│ ├── 15_code
│ │ ├── AsyncSamples
│ │ │ ├── AsyncHistory
│ │ │ │ ├── AsyncHistory.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── AsyncSamples.sln
│ │ │ ├── AsyncWindowsApp
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── AsyncWindowsApp.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── ErrorHandling
│ │ │ │ ├── ErrorHandling.csproj
│ │ │ │ └── Program.cs
│ │ │ └── Foundations
│ │ │ ├── Command.cs
│ │ │ ├── Foundations.csproj
│ │ │ └── Program.cs
│ │ └── Readme.md
│ ├── 16_code
│ │ ├── DynamicSamples
│ │ │ ├── CalculatorLib
│ │ │ │ ├── Calculator.cs
│ │ │ │ └── CalculatorLib.csproj
│ │ │ ├── ClientApp
│ │ │ │ ├── ClientApp.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── DecompileSample
│ │ │ │ ├── DecompileSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── DynamicFileReader
│ │ │ │ ├── DynamicFileHelper.cs
│ │ │ │ ├── DynamicFileReader.csproj
│ │ │ │ ├── EmployeeList.txt
│ │ │ │ └── Program.cs
│ │ │ ├── DynamicSample
│ │ │ │ ├── DynamicSample.csproj
│ │ │ │ ├── Person.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── WroxDynamicObject.cs
│ │ │ └── DynamicSamples.sln
│ │ ├── Readme.md
│ │ └── ReflectionSamples
│ │ ├── LookupWhatsNew
│ │ │ ├── LookupWhatsNew.csproj
│ │ │ └── Program.cs
│ │ ├── ReflectionSamples.sln
│ │ ├── TypeView
│ │ │ ├── Program.cs
│ │ │ └── TypeView.csproj
│ │ ├── VectorClass
│ │ │ ├── Vector.cs
│ │ │ └── VectorClass.csproj
│ │ └── WhatsNewAttributes
│ │ ├── WhatsNewAttributes.cs
│ │ └── WhatsNewAttributes.csproj
│ ├── 17_code
│ │ ├── MemorySamples
│ │ │ ├── DisposableSample
│ │ │ │ ├── DisposableSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SomeInnerResource.cs
│ │ │ │ └── SomeResource.cs
│ │ │ ├── MemorySamples.sln
│ │ │ ├── PInvokeSampleLib
│ │ │ │ ├── FileUtility.cs
│ │ │ │ ├── NativeMethods.cs
│ │ │ │ └── PInvokeSampleLib.csproj
│ │ │ ├── PinvokeSample
│ │ │ │ ├── PinvokeSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── PointerPlayground
│ │ │ │ ├── PointerPlayground.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── PointerPlayground2
│ │ │ │ ├── Currency.cs
│ │ │ │ ├── PointerPlayground2.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── QuickArray
│ │ │ │ ├── Program.cs
│ │ │ │ └── QuickArray.csproj
│ │ │ ├── ReferenceSemantics
│ │ │ │ ├── Container.cs
│ │ │ │ ├── Data.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── ReferenceSemantics.csproj
│ │ │ └── SpanSample
│ │ │ ├── Program.cs
│ │ │ ├── SpanSample.csproj
│ │ │ └── nuget.config
│ │ └── Readme.md
│ ├── 18_code
│ │ ├── DockerSample
│ │ │ ├── Controllers
│ │ │ │ └── HomeController.cs
│ │ │ ├── DockerSample.csproj
│ │ │ ├── Models
│ │ │ │ └── ErrorViewModel.cs
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ ├── Views
│ │ │ │ ├── Home
│ │ │ │ ├── Shared
│ │ │ │ ├── _ViewImports.cshtml
│ │ │ │ └── _ViewStart.cshtml
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ ├── bundleconfig.json
│ │ │ ├── dockerfile
│ │ │ └── wwwroot
│ │ │ ├── css
│ │ │ ├── favicon.ico
│ │ │ ├── images
│ │ │ ├── js
│ │ │ └── lib
│ │ ├── Readme.md
│ │ └── WebAppWithVS
│ │ ├── WebAppWithVS
│ │ │ ├── Controllers
│ │ │ ├── Dockerfile
│ │ │ ├── Models
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ ├── Views
│ │ │ ├── WebAppWithVS.csproj
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ ├── bundleconfig.json
│ │ │ └── wwwroot
│ │ ├── WebAppWithVS.sln
│ │ ├── docker-compose.ci.build.yml
│ │ ├── docker-compose.dcproj
│ │ ├── docker-compose.override.yml
│ │ └── docker-compose.yml
│ ├── 19_code
│ │ ├── ConsoleApp
│ │ │ ├── ConsoleApp.csproj
│ │ │ └── Program.cs
│ │ ├── CreateNuGet
│ │ │ ├── CreateNuGet.sln
│ │ │ ├── DotnetCaller
│ │ │ │ ├── DotnetCaller.csproj
│ │ │ │ └── Program.cs
│ │ │ └── SampleLib
│ │ │ ├── Demo.cs
│ │ │ └── SampleLib.csproj
│ │ ├── Readme.md
│ │ ├── UsingASharedProject
│ │ │ ├── SharedProject
│ │ │ │ ├── Message.cs
│ │ │ │ ├── SharedProject.projitems
│ │ │ │ └── SharedProject.shproj
│ │ │ ├── UniversalApp
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── UniversalApp.csproj
│ │ │ ├── UsingASharedProject
│ │ │ │ ├── Program.cs
│ │ │ │ └── UsingASharedProject.csproj
│ │ │ └── UsingASharedProject.sln
│ │ ├── UsingLegacyLibs
│ │ │ ├── DotnetFrameworkApp
│ │ │ │ ├── App.config
│ │ │ │ ├── DotnetFrameworkApp.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── Properties
│ │ │ ├── DotnetFrameworkLib
│ │ │ │ ├── DotnetFrameworkLib.csproj
│ │ │ │ ├── Legacy.cs
│ │ │ │ └── Properties
│ │ │ ├── DotnetStandardLib
│ │ │ │ ├── DotnetStandardLib.csproj
│ │ │ │ └── Wrapper.cs
│ │ │ ├── UsingLegacyLibs
│ │ │ │ ├── Program.cs
│ │ │ │ └── UsingLegacyLibs.csproj
│ │ │ └── UsingLegacyLibs.sln
│ │ └── UsingLibs
│ │ ├── ConsoleApp
│ │ │ ├── ConsoleApp.csproj
│ │ │ └── Program.cs
│ │ ├── SimpleLib
│ │ │ ├── Sample.cs
│ │ │ ├── SimpleLib.csproj
│ │ │ └── SimpleLib.sln
│ │ └── UsingLibs.sln
│ ├── 20_code
│ │ ├── DependencyInjectionSamples
│ │ │ ├── DIWithAutofac
│ │ │ │ ├── DIWithAutofac.csproj
│ │ │ │ ├── GreetingService.cs
│ │ │ │ ├── HomeController.cs
│ │ │ │ ├── IGreetingService.cs
│ │ │ │ └── Program.cs
│ │ │ ├── DIWithConfiguration
│ │ │ │ ├── DIWithConfiguration.csproj
│ │ │ │ ├── GreetingService.cs
│ │ │ │ ├── GreetingServiceExtensions.cs
│ │ │ │ ├── GreetingServiceOptions.cs
│ │ │ │ ├── HomeController.cs
│ │ │ │ ├── IGreetingService.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── appsettings.json
│ │ │ ├── DIWithOptions
│ │ │ │ ├── DIWithOptions.csproj
│ │ │ │ ├── GreetingService.cs
│ │ │ │ ├── GreetingServiceExtensions.cs
│ │ │ │ ├── GreetingServiceOptions.cs
│ │ │ │ ├── HomeController.cs
│ │ │ │ ├── IGreetingService.cs
│ │ │ │ └── Program.cs
│ │ │ ├── DependencyInjectionSamples.sln
│ │ │ ├── NoDI
│ │ │ │ ├── GreetingService.cs
│ │ │ │ ├── HomeController.cs
│ │ │ │ ├── NoDI.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ServicesLifetime
│ │ │ │ ├── ControllerX.cs
│ │ │ │ ├── INumberService.cs
│ │ │ │ ├── IServiceA.cs
│ │ │ │ ├── IServiceB.cs
│ │ │ │ ├── IServiceC.cs
│ │ │ │ ├── NumberService.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── ServiceA.cs
│ │ │ │ ├── ServiceB.cs
│ │ │ │ ├── ServiceC.cs
│ │ │ │ └── ServicesLifetime.csproj
│ │ │ ├── WithDI
│ │ │ │ ├── GreetingService.cs
│ │ │ │ ├── HomeController.cs
│ │ │ │ ├── IGreetingService.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── WithDI.csproj
│ │ │ └── WithDIContainer
│ │ │ ├── GreetingService.cs
│ │ │ ├── HomeController.cs
│ │ │ ├── IGreetingService.cs
│ │ │ ├── Program.cs
│ │ │ └── WithDIContainer.csproj
│ │ ├── PISample
│ │ │ ├── DISampleLib
│ │ │ │ ├── DISampleLib.csproj
│ │ │ │ ├── IMessageService.cs
│ │ │ │ ├── RelayCommand.cs
│ │ │ │ └── ShowMessageViewModel.cs
│ │ │ ├── PlatformIndependenceSample.sln
│ │ │ ├── UWPClient
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── UWPClient.csproj
│ │ │ │ └── UWPMessageService.cs
│ │ │ ├── WPFClient
│ │ │ │ ├── App.config
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── MainWindow.xaml
│ │ │ │ ├── MainWindow.xaml.cs
│ │ │ │ ├── Properties
│ │ │ │ ├── WPFClient.csproj
│ │ │ │ ├── WPFMessageService.cs
│ │ │ │ └── packages.config
│ │ │ └── XamarinClient
│ │ │ ├── XamarinClient
│ │ │ ├── XamarinClient.Android
│ │ │ ├── XamarinClient.UWP
│ │ │ └── XamarinClient.iOS
│ │ └── Readme.md
│ ├── 21_code
│ │ ├── ParallelSamples
│ │ │ ├── CancellationSamples
│ │ │ │ ├── CancellationSamples.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── DataFlowSample
│ │ │ │ ├── DataFlowSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ParallelSamples
│ │ │ │ ├── Command.cs
│ │ │ │ ├── ParallelSamples.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ParallelSamples.sln
│ │ │ ├── SimpleDataFlowSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── SimpleDataFlowSample.csproj
│ │ │ ├── TaskSamples
│ │ │ │ ├── Command.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── TaskSamples.csproj
│ │ │ ├── TimersSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── TimersSample.csproj
│ │ │ ├── ValueTaskSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── ValueTaskSample.csproj
│ │ │ └── WinAppTimer
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── WinAppTimer.csproj
│ │ ├── Readme.md
│ │ └── SynchronizationSamples
│ │ ├── BarrierSample
│ │ │ ├── BarrierSample.csproj
│ │ │ └── Program.cs
│ │ ├── EventSample
│ │ │ ├── Calculator.cs
│ │ │ ├── EventSample.csproj
│ │ │ └── Program.cs
│ │ ├── EventSampleWithCountdownEvent
│ │ │ ├── Calculator.cs
│ │ │ ├── EventSampleWithCountdownEvent.csproj
│ │ │ └── Program.cs
│ │ ├── LockAcrossAwait
│ │ │ ├── AsyncSemaphore.cs
│ │ │ ├── LockAcrossAwait.csproj
│ │ │ └── Program.cs
│ │ ├── ReaderWriterLockSample
│ │ │ ├── Program.cs
│ │ │ └── ReaderWriterLockSample.csproj
│ │ ├── SemaphoreSample
│ │ │ ├── Program.cs
│ │ │ └── SemaphoreSample.csproj
│ │ ├── SingletonUsingMutex
│ │ │ ├── Program.cs
│ │ │ └── SingletonUsingMutex.csproj
│ │ ├── SynchronizationSamples.sln
│ │ ├── SynchronizatonSamples
│ │ │ ├── Job.cs
│ │ │ ├── Program.cs
│ │ │ ├── SharedState.cs
│ │ │ └── SynchronizatonSamples.csproj
│ │ └── ThreadingIssues
│ │ ├── Program.cs
│ │ ├── SampleTask.cs
│ │ └── ThreadingIssues.csproj
│ ├── 22_code
│ │ ├── FilesAndStreamsSamples
│ │ │ ├── AnonymousPipes
│ │ │ │ ├── AnonymousPipes.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── CompressFileSample
│ │ │ │ ├── CompressFileSample.csproj
│ │ │ │ ├── CompressFileSample.sln
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Test.txt
│ │ │ │ ├── test.txt.brotli
│ │ │ │ ├── test.txt.gzip
│ │ │ │ └── test.zip
│ │ │ ├── DriveInformation
│ │ │ │ ├── DriveInformation.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── FileMonitor
│ │ │ │ ├── FileMonitor.csproj
│ │ │ │ ├── FileMonitor.sln
│ │ │ │ └── Program.cs
│ │ │ ├── FilesAndStreamsSamples.sln
│ │ │ ├── MemoryMappedFilesSample
│ │ │ │ ├── MemoryMappedFilesSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── NuGet.config
│ │ │ ├── PipesReader
│ │ │ │ ├── PipesReader.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── PipesWriter
│ │ │ │ ├── PipesWriter.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ReaderWriterSamples
│ │ │ │ ├── Program.cs
│ │ │ │ └── ReaderWriterSamples.csproj
│ │ │ ├── StreamSamples
│ │ │ │ ├── Program.cs
│ │ │ │ └── StreamSamples.csproj
│ │ │ ├── WindowsAppEditor
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── WindowsAppEditor.csproj
│ │ │ └── WorkingWithFilesAndDirectories
│ │ │ ├── Program.cs
│ │ │ └── WorkingWithFilesAndDirectories.csproj
│ │ └── Readme.md
│ ├── 23_code
│ │ ├── NetworkingSamples
│ │ │ ├── DnsLookup
│ │ │ │ ├── DnsLookup.csproj
│ │ │ │ ├── NuGet.config
│ │ │ │ └── Program.cs
│ │ │ ├── HttpClientSample
│ │ │ │ ├── Command.cs
│ │ │ │ ├── HttpClientSample.csproj
│ │ │ │ ├── HttpClientSamples.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── SampleMessageHandler.cs
│ │ │ ├── HttpClientUsingTcp
│ │ │ │ ├── HttpClientUsingTcp.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── HttpServer
│ │ │ │ ├── HttpServer.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── NetworkingSamples.sln
│ │ │ ├── SocketClient
│ │ │ │ ├── Program.cs
│ │ │ │ └── SocketClient.csproj
│ │ │ ├── SocketServer
│ │ │ │ ├── Program.cs
│ │ │ │ └── SocketServer.csproj
│ │ │ ├── TcpClientSample
│ │ │ │ ├── Program.cs
│ │ │ │ └── TcpClientSample.csproj
│ │ │ ├── TcpServer
│ │ │ │ ├── CommandActions.cs
│ │ │ │ ├── CustomProtocol.cs
│ │ │ │ ├── CustomProtocolException.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SessionManager.cs
│ │ │ │ └── TcpServer.csproj
│ │ │ ├── UdpReceiver
│ │ │ │ ├── Program.cs
│ │ │ │ └── UdpReceiver.csproj
│ │ │ ├── UdpSender
│ │ │ │ ├── Program.cs
│ │ │ │ └── UdpSender.csproj
│ │ │ ├── Utilities
│ │ │ │ ├── Command.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── Utilities.csproj
│ │ │ ├── WPFAppTcpClient
│ │ │ │ ├── App.config
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── CustomProtocolCommands.cs
│ │ │ │ ├── MainWindow.xaml
│ │ │ │ ├── MainWindow.xaml.cs
│ │ │ │ ├── Properties
│ │ │ │ └── WPFAppTcpClient.csproj
│ │ │ ├── WinAppHttpClient
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── WinAppHttpClient.csproj
│ │ │ └── WinAppTcpClient
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── CustomProtocolCommand.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── WinAppTcpClient.csproj
│ │ └── Readme.md
│ ├── 24_code
│ │ ├── ASPNETCoreMVCSecurity
│ │ │ ├── ASPNETCoreMVCSecurity.csproj
│ │ │ ├── Controllers
│ │ │ │ └── HomeController.cs
│ │ │ ├── Models
│ │ │ │ ├── Book.cs
│ │ │ │ └── ErrorViewModel.cs
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ ├── Views
│ │ │ │ ├── Home
│ │ │ │ ├── Shared
│ │ │ │ ├── _ViewImports.cshtml
│ │ │ │ └── _ViewStart.cshtml
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ ├── bower.json
│ │ │ ├── bundleconfig.json
│ │ │ └── wwwroot
│ │ │ ├── css
│ │ │ ├── favicon.ico
│ │ │ ├── images
│ │ │ ├── js
│ │ │ └── lib
│ │ ├── DataProtectionSample
│ │ │ ├── DataProtectionSample.csproj
│ │ │ ├── MySafe.cs
│ │ │ ├── Program.cs
│ │ │ ├── key-6fd950ad-152a-48d9-8055-f19eafe5d7bf.xml
│ │ │ └── sample1
│ │ ├── FileAccessControl
│ │ │ ├── FileAccessControl.csproj
│ │ │ └── Program.cs
│ │ ├── HackingSite
│ │ │ ├── HackingSite.csproj
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ └── wwwroot
│ │ │ └── dothis.html
│ │ ├── RSASample
│ │ │ ├── Program.cs
│ │ │ └── RSASample.csproj
│ │ ├── Readme.md
│ │ ├── SecureTransfer
│ │ │ ├── Program.cs
│ │ │ └── SecureTransfer.csproj
│ │ ├── Security.sln
│ │ ├── SigningDemo
│ │ │ ├── Program.cs
│ │ │ └── SigningDemo.csproj
│ │ ├── UserSecretsSample
│ │ │ ├── Program.cs
│ │ │ ├── UserSecretsSample.csproj
│ │ │ └── appsettings.json
│ │ └── WindowsPrincipal
│ │ ├── Program.cs
│ │ └── WindowsPrincipal.csproj
│ ├── 25_code
│ │ ├── ADONetSamples
│ │ │ ├── ADONetSamples.sln
│ │ │ ├── AsyncSamples
│ │ │ │ ├── AsyncSamples.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── config.json
│ │ │ ├── CommandSamples
│ │ │ │ ├── CommandSamples.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── config.json
│ │ │ ├── ConnectionSamples
│ │ │ │ ├── ConnectionSamples.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── config.json
│ │ │ ├── SystemTransactionSamples
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksData.cs
│ │ │ │ ├── Nuget.config
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SystemTransactionSamples.csproj
│ │ │ │ ├── Utilities.cs
│ │ │ │ └── config.json
│ │ │ └── TransactionSamples
│ │ │ ├── Program.cs
│ │ │ ├── TransactionSamples.csproj
│ │ │ └── config.json
│ │ ├── CreateDatabase
│ │ │ ├── Books.bak
│ │ │ └── CreateBooks.sql
│ │ └── Readme.md
│ ├── 26_code
│ │ ├── EFCoreSamples
│ │ │ ├── BooksSample
│ │ │ │ ├── Author.cs
│ │ │ │ ├── AuthorConfiguration.cs
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BookAuthor.cs
│ │ │ │ ├── BookAuthorConfiguration.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── BooksSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── QuerySamples.cs
│ │ │ ├── ConflictHandlingSample
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── ByteArrayExtensions.cs
│ │ │ │ ├── ConflictHandlingSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ContextPoolSample
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── BooksController.cs
│ │ │ │ ├── BooksService.cs
│ │ │ │ ├── ContextPoolSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── EFCoreSamples.sln
│ │ │ ├── Intro
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── Intro.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MenusSample
│ │ │ │ ├── Menu.cs
│ │ │ │ ├── MenuCard.cs
│ │ │ │ ├── MenuCardConfiguration.cs
│ │ │ │ ├── MenuConfiguration.cs
│ │ │ │ ├── MenusContext.cs
│ │ │ │ ├── MenusSample.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MenusWithDataAnnotations
│ │ │ │ ├── Menu.cs
│ │ │ │ ├── MenuCard.cs
│ │ │ │ ├── MenusContext.cs
│ │ │ │ ├── MenusWithDataAnnotations.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MigrationsConsoleApp
│ │ │ │ ├── MenusContextFactory.cs
│ │ │ │ ├── MigrationsConsoleApp.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── MigrationsLib
│ │ │ │ ├── Menu.cs
│ │ │ │ ├── MenuCard.cs
│ │ │ │ ├── MenuCardConfiguration.cs
│ │ │ │ ├── MenuConfiguration.cs
│ │ │ │ ├── MenusContext.cs
│ │ │ │ ├── Migrations
│ │ │ │ └── MigrationsLib.csproj
│ │ │ ├── MigrationsWebApp
│ │ │ │ ├── Controllers
│ │ │ │ ├── MigrationsWebApp.csproj
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── Views
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bower.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ ├── OwnedEntities
│ │ │ │ ├── Address.cs
│ │ │ │ ├── Location.cs
│ │ │ │ ├── OwnedEntities.csproj
│ │ │ │ ├── OwnedEntitiesContext.cs
│ │ │ │ ├── Person.cs
│ │ │ │ └── Program.cs
│ │ │ ├── RelationUsingAnnotations
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── Chapter.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RelationUsingAnnotations.csproj
│ │ │ │ └── User.cs
│ │ │ ├── RelationUsingConventions
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── Chapter.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RelationUsingConventions.csproj
│ │ │ │ └── User.cs
│ │ │ ├── RelationUsingFluentAPI
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── Chapter.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RelationUsingFluentAPI.csproj
│ │ │ │ └── User.cs
│ │ │ ├── ScaffoldSample
│ │ │ │ ├── MenuCards.cs
│ │ │ │ ├── MenuCardsContext.cs
│ │ │ │ ├── Menus.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── ScaffoldSample.csproj
│ │ │ ├── TPHWithConventions
│ │ │ │ ├── BankContext.cs
│ │ │ │ ├── CashPayment.cs
│ │ │ │ ├── CreditcardPayment.cs
│ │ │ │ ├── Payment.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── TPHWithConventions.csproj
│ │ │ ├── TPHWithFluentAPI
│ │ │ │ ├── BankContext.cs
│ │ │ │ ├── CashPayment.cs
│ │ │ │ ├── CreditcardPayment.cs
│ │ │ │ ├── Payment.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── TPHWithFluentAPI.csproj
│ │ │ ├── TableSplitting
│ │ │ │ ├── Menu.cs
│ │ │ │ ├── MenuDetails.cs
│ │ │ │ ├── MenusContext.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── TableSplitting.csproj
│ │ │ ├── TransactionsSample
│ │ │ │ ├── Menu.cs
│ │ │ │ ├── MenuCard.cs
│ │ │ │ ├── MenusContext.cs
│ │ │ │ ├── Program.cs
│ │ │ │ └── TransactionsSample.csproj
│ │ │ └── UsingDependencyInjection
│ │ │ ├── Book.cs
│ │ │ ├── BooksContext.cs
│ │ │ ├── BooksService.cs
│ │ │ ├── Program.cs
│ │ │ └── UsingDependencyInjection.csproj
│ │ └── README.md
│ ├── 27_code
│ │ ├── LocalizationSamples
│ │ │ ├── ASPNETCoreMVCSample
│ │ │ │ ├── ASPNETCoreMVCSample.csproj
│ │ │ │ ├── Controllers
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Resources
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── Views
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bower.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ ├── CreateResource
│ │ │ │ ├── CreateResource.csproj
│ │ │ │ ├── Demo.resources
│ │ │ │ └── Program.cs
│ │ │ ├── LocalizationSamples.sln
│ │ │ ├── NumberAndDateFormatting
│ │ │ │ ├── NumberAndDateFormatting.csproj
│ │ │ │ └── Program.cs
│ │ │ ├── ResourcesDemo
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Program.resx
│ │ │ │ ├── Resources
│ │ │ │ └── ResourcesDemo.csproj
│ │ │ ├── SortingDemo
│ │ │ │ ├── Program.cs
│ │ │ │ └── SortingDemo.csproj
│ │ │ ├── TreeViewControl
│ │ │ │ ├── IntegerToIndentationConverter.cpp
│ │ │ │ ├── IntegerToIndentationConverter.h
│ │ │ │ ├── TreeNode.cpp
│ │ │ │ ├── TreeNode.h
│ │ │ │ ├── TreeView.cpp
│ │ │ │ ├── TreeView.h
│ │ │ │ ├── TreeViewControl.vcxproj
│ │ │ │ ├── TreeViewControl.vcxproj.filters
│ │ │ │ ├── TreeViewItem.cpp
│ │ │ │ ├── TreeViewItem.h
│ │ │ │ ├── TreeViewItemAutomationPeer.cpp
│ │ │ │ ├── TreeViewItemAutomationPeer.h
│ │ │ │ ├── ViewModel.cpp
│ │ │ │ ├── ViewModel.h
│ │ │ │ ├── pch.cpp
│ │ │ │ └── pch.h
│ │ │ ├── UWPCultureDemo
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── Converters
│ │ │ │ ├── CultureData.cs
│ │ │ │ ├── CultureDetailUC.xaml
│ │ │ │ ├── CultureDetailUC.xaml.cs
│ │ │ │ ├── CulturesViewModel.cs
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── UWPCultureDemo.csproj
│ │ │ ├── UWPLocalization
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Messages
│ │ │ │ ├── MultilingualResources
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── Strings
│ │ │ │ └── UWPLocalization.csproj
│ │ │ └── WebApplicationSample
│ │ │ ├── CustomResources
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ └── WebApplicationSample.csproj
│ │ └── Readme.md
│ ├── 28_code
│ │ ├── ASPNETCoreSample
│ │ │ ├── ASPNETCoreSample
│ │ │ │ ├── ASPNETCoreSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── Startup.cs
│ │ │ ├── ASPNETCoreSample.IntegrationTest
│ │ │ │ ├── ASPNETCoreSample.IntegrationTest.csproj
│ │ │ │ └── AspNetCoreSampleTest.cs
│ │ │ └── ASPNETCoreSample.sln
│ │ ├── EFCoreSample
│ │ │ ├── EFCoreSample
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BooksContext.cs
│ │ │ │ ├── BooksService.cs
│ │ │ │ └── EFCoreSample.csproj
│ │ │ ├── EFCoreSample.Tests
│ │ │ │ ├── BooksServiceTest.cs
│ │ │ │ └── EFCoreSample.Tests.csproj
│ │ │ └── EFCoreSample.sln
│ │ ├── MockingSamples
│ │ │ ├── BooksLib
│ │ │ │ ├── BooksLib.csproj
│ │ │ │ ├── Models
│ │ │ │ ├── Repositories
│ │ │ │ └── Services
│ │ │ ├── BooksLib.Tests
│ │ │ │ ├── BooksLib.Tests.csproj
│ │ │ │ └── Services
│ │ │ ├── Framework
│ │ │ │ ├── BindableObject.cs
│ │ │ │ └── Framework.csproj
│ │ │ └── MockingSamples.sln
│ │ ├── Readme.md
│ │ ├── UnitTestingSamples
│ │ │ ├── UnitTestingSamples
│ │ │ │ ├── ChampionsLoader.cs
│ │ │ │ ├── DeepThought.cs
│ │ │ │ ├── F1Addresses.cs
│ │ │ │ ├── Formula1.cs
│ │ │ │ ├── IChampionsLoader.cs
│ │ │ │ ├── StringSample.cs
│ │ │ │ └── UnitTestingSamples.csproj
│ │ │ ├── UnitTestingSamples.MSTests
│ │ │ │ ├── DeepToughtTest.cs
│ │ │ │ ├── Formula1Test.cs
│ │ │ │ ├── StringSampleTest.cs
│ │ │ │ └── UnitTestingSamples.MSTests.csproj
│ │ │ ├── UnitTestingSamples.sln
│ │ │ └── UnitTestingSamples.xUnit.Tests
│ │ │ ├── DeepThoughtTest.cs
│ │ │ ├── StringSampleTest.cs
│ │ │ └── UnitTestingSamples.xUnit.Tests.csproj
│ │ ├── WebApplicationSample
│ │ │ ├── Local.testsettings
│ │ │ ├── WebAndLoadTest
│ │ │ │ ├── NavigateAndRegisterTest.cs
│ │ │ │ ├── Properties
│ │ │ │ ├── WebAndLoadTest.csproj
│ │ │ │ ├── WebTest1.d1b343ea-5970-4410-a197-12228ce86ef3.rec.webtestresult
│ │ │ │ └── WebTest1.webtest
│ │ │ ├── WebApplicationSample
│ │ │ │ ├── Controllers
│ │ │ │ ├── Data
│ │ │ │ ├── Extensions
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Services
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── Views
│ │ │ │ ├── WebApplicationSample.csproj
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ └── WebApplicationSample.sln
│ │ └── WindowsApp
│ │ ├── WindowsApp
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── WindowsApp.csproj
│ │ ├── WindowsApp.UITest
│ │ │ ├── MainPageTest.cs
│ │ │ ├── Properties
│ │ │ ├── UIMap.Designer.cs
│ │ │ ├── UIMap.cs
│ │ │ ├── UIMap.uitest
│ │ │ └── WindowsApp.UITest.csproj
│ │ └── WindowsApp.sln
│ ├── 29_code
│ │ ├── EventSourceSamples
│ │ │ ├── ClientApp
│ │ │ │ ├── ClientApp.csproj
│ │ │ │ ├── MyEventListener.cs
│ │ │ │ ├── PerfViewData.etl.zip
│ │ │ │ └── Program.cs
│ │ │ ├── EventSourceSampleAnnotations
│ │ │ │ ├── EventSourceSampleAnnotations.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SampleEventSource.cs
│ │ │ │ └── sampleeventsource.xml
│ │ │ ├── EventSourceSampleInheritance
│ │ │ │ ├── EventSourceSampleInheritance.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SampleEventSource.cs
│ │ │ │ ├── log2.etl
│ │ │ │ └── log2.xml
│ │ │ ├── EventSourceSamples.sln
│ │ │ ├── MyApplicationEvents
│ │ │ │ ├── MyApplicationEvents.csproj
│ │ │ │ └── SampleEventSource.cs
│ │ │ └── SimpleEventSourceSample
│ │ │ ├── Program.cs
│ │ │ ├── SimpleEventSourceSample.csproj
│ │ │ ├── mytrace.etl
│ │ │ └── mytrace.xml
│ │ ├── LoggingSample
│ │ │ ├── LoggingConfigurationSample
│ │ │ │ ├── LoggingConfigurationSample.csproj
│ │ │ │ ├── LoggingEvents.cs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── SampleController.cs
│ │ │ │ └── appsettings.json
│ │ │ ├── LoggingSample
│ │ │ │ ├── LoggingEvents.cs
│ │ │ │ ├── LoggingSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── SampleController.cs
│ │ │ ├── LoggingSample.sln
│ │ │ ├── LoggingScopeSample
│ │ │ │ ├── LoggingEvents.cs
│ │ │ │ ├── LoggingScopeSample.csproj
│ │ │ │ ├── Program.cs
│ │ │ │ └── SampleController.cs
│ │ │ └── LoggingWithoutDI
│ │ │ ├── LoggingWithoutDI.csproj
│ │ │ └── Program.cs
│ │ ├── Readme.md
│ │ └── WinAppAnalytics
│ │ ├── WinAppAnalytics
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── EventNames.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── MainPageViewModel.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── WinAppAnalytics.csproj
│ │ └── WinAppAnalytics.sln
│ ├── 30_code
│ │ ├── Readme.md
│ │ └── WebSampleApp
│ │ ├── AngularWithDotnetCore
│ │ │ ├── AngularWithDotnetCore.csproj
│ │ │ ├── ClientApp
│ │ │ ├── Controllers
│ │ │ ├── Program.cs
│ │ │ ├── Startup.cs
│ │ │ ├── Views
│ │ │ ├── appsettings.Development.json
│ │ │ ├── appsettings.json
│ │ │ ├── npm-shrinkwrap.json
│ │ │ ├── package.json
│ │ │ ├── tsconfig.json
│ │ │ ├── webpack.config.js
│ │ │ ├── webpack.config.vendor.js
│ │ │ └── wwwroot
│ │ ├── CustomConfiguration
│ │ │ ├── CustomConfiguration.csproj
│ │ │ ├── Program.cs
│ │ │ └── appsettings.json
│ │ ├── SimpleHost
│ │ │ ├── Program.cs
│ │ │ └── SimpleHost.csproj
│ │ ├── WebSampleApp
│ │ │ ├── ConfigurationSample.cs
│ │ │ ├── Controllers
│ │ │ ├── HtmlExtensions.cs
│ │ │ ├── Middleware
│ │ │ ├── Program.cs
│ │ │ ├── RequestAndResponseSamples.cs
│ │ │ ├── Services
│ │ │ ├── SessionSample.cs
│ │ │ ├── Startup.cs
│ │ │ ├── WebSampleApp.csproj
│ │ │ ├── appsettings.development.json
│ │ │ ├── appsettings.json
│ │ │ ├── bower.json
│ │ │ ├── package.json
│ │ │ └── wwwroot
│ │ └── WebSampleApp.sln
│ ├── 31_code
│ │ ├── AzureADB2CSample
│ │ │ ├── AzureADB2CSample
│ │ │ │ ├── AzureADB2CSample.csproj
│ │ │ │ ├── Controllers
│ │ │ │ ├── Extensions
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── Views
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ └── AzureADB2CSample.sln
│ │ ├── MVCSampleApp
│ │ │ ├── MVCSampleApp
│ │ │ │ ├── Controllers
│ │ │ │ ├── Extensions
│ │ │ │ ├── MVCSampleApp.csproj
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Services
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── ViewComponents
│ │ │ │ ├── Views
│ │ │ │ └── wwwroot
│ │ │ ├── MVCSampleApp.sln
│ │ │ └── TagHelperSamples
│ │ │ ├── MarkdownTagHelper.cs
│ │ │ ├── TableTagHelper.cs
│ │ │ └── TagHelperSamples.csproj
│ │ ├── MenuPlanner
│ │ │ ├── MenuPlanner
│ │ │ │ ├── Controllers
│ │ │ │ ├── Data
│ │ │ │ ├── Extensions
│ │ │ │ ├── MenuPlanner.csproj
│ │ │ │ ├── Migrations
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Services
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── Views
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ └── MenuPlanner.sln
│ │ ├── RazorPagesSample
│ │ │ ├── RazorPagesSample
│ │ │ │ ├── Models
│ │ │ │ ├── Pages
│ │ │ │ ├── Program.cs
│ │ │ │ ├── RazorPagesSample.csproj
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ ├── appsettings.json
│ │ │ │ ├── bundleconfig.json
│ │ │ │ └── wwwroot
│ │ │ └── RazorPagesSample.sln
│ │ └── Readme.md
│ ├── 32_code
│ │ ├── Async
│ │ │ └── BooksServiceSample
│ │ │ ├── BookServiceClientApp
│ │ │ ├── BooksServiceSample
│ │ │ ├── BooksServiceSample.sln
│ │ │ ├── BooksServiceSampleHost
│ │ │ └── docs
│ │ ├── BooksODataService
│ │ │ ├── BooksODataService
│ │ │ │ ├── BooksODataService.csproj
│ │ │ │ ├── Controllers
│ │ │ │ ├── Models
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Services
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ └── appsettings.json
│ │ │ └── BooksODataService.sln
│ │ ├── README.md
│ │ └── Sync
│ │ └── BooksServiceSample
│ │ ├── APIBookServices
│ │ ├── BookFunctionApp
│ │ ├── BookServiceClientApp
│ │ ├── BookServices
│ │ ├── BooksServiceSample.sln
│ │ └── BooksServiceSampleHost
│ ├── 33_code
│ │ ├── ControlsSamples
│ │ │ ├── ControlsSamples
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── ControlsSamples.csproj
│ │ │ │ ├── Converters
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── Utilities
│ │ │ │ └── Views
│ │ │ └── ControlsSamples.sln
│ │ ├── DataBindingSamples
│ │ │ ├── DataBindingSamples
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── Converters
│ │ │ │ ├── DataBindingSamples.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── Services
│ │ │ │ ├── Utilities
│ │ │ │ └── Views
│ │ │ └── DataBindingSamples.sln
│ │ ├── DateSelectionSample
│ │ │ ├── DateSelectionSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── DateSelectionSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── DateSelectionSample.sln
│ │ ├── HelloWindows
│ │ │ ├── HelloWindows
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── HelloWindows.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── HelloWindows.sln
│ │ ├── IntroXAML
│ │ │ ├── AttachedProperty
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── AttachedProperty.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── MyAttachedPropertyProvider.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── ConditionalXAML
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── ConditionalXAML.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── CustomMarkupExtension
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── CalculatorExtension.cs
│ │ │ │ ├── CustomMarkupExtension.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── DataLib
│ │ │ │ ├── DataLib.csproj
│ │ │ │ └── Person.cs
│ │ │ ├── DependencyObjectSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── DependencyObjectSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── MyDependencyObject.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── IntroXAML.sln
│ │ │ ├── MarkupExtensions
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── MarkupExtensions.csproj
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ ├── RoutedEvents
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── RoutedEvents.csproj
│ │ │ └── XAMLIntro
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── XAMLIntro.csproj
│ │ ├── LayoutSamples
│ │ │ ├── LayoutSamples
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── LayoutSamples.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── Views
│ │ │ └── LayoutSamples.sln
│ │ ├── NavigationControls
│ │ │ ├── NavigationControls
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── HubPage.xaml
│ │ │ │ ├── HubPage.xaml.cs
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── NavigationControls.csproj
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── PivotPage.xaml
│ │ │ │ ├── PivotPage.xaml.cs
│ │ │ │ └── Properties
│ │ │ └── NavigationControls.sln
│ │ ├── NavigationViewSample
│ │ │ ├── NavigationViewSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── NavigationViewSample.csproj
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── NavigationViewSample.sln
│ │ ├── PageNavigation
│ │ │ ├── PageNavigation
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── NavigationPage.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── PageNavigation.csproj
│ │ │ │ ├── Properties
│ │ │ │ ├── SecondPage.xaml
│ │ │ │ ├── SecondPage.xaml.cs
│ │ │ │ ├── ThirdPage.xaml
│ │ │ │ └── ThirdPage.xaml.cs
│ │ │ └── PageNavigation.sln
│ │ ├── ParallaxViewSample
│ │ │ ├── ParallaxViewSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── ParallaxViewSample.csproj
│ │ │ │ └── Properties
│ │ │ └── ParallaxViewSample.sln
│ │ ├── Readme.md
│ │ └── ReflectionDataBindingSamples
│ │ ├── DataBindingSamples
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── Converters
│ │ │ ├── DataBindingSamples.csproj
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Models
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── Services
│ │ │ ├── Utilities
│ │ │ └── Views
│ │ └── DataBindingSamples.sln
│ ├── 34_code
│ │ ├── Patterns
│ │ │ ├── BooksSample
│ │ │ │ ├── BooksApp
│ │ │ │ └── BooksSample.sln
│ │ │ └── Readme.md
│ │ └── PatternsXamarinShared
│ │ ├── BooksLib
│ │ │ ├── BooksLib.csproj
│ │ │ ├── Events
│ │ │ ├── Models
│ │ │ ├── Services
│ │ │ └── ViewModels
│ │ └── Framework
│ │ ├── BindableBase.cs
│ │ ├── ErrorInfoObject.cs
│ │ ├── Framework.csproj
│ │ ├── RelayCommand.cs
│ │ ├── Services
│ │ └── ViewModels
│ ├── 35_code
│ │ ├── Readme.md
│ │ └── StylesSamples
│ │ ├── Animation
│ │ │ ├── Animation.csproj
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── EasingChartControl.xaml
│ │ │ ├── EasingChartControl.xaml.cs
│ │ │ ├── EasingFunctionModel.cs
│ │ │ ├── EasingFunctionsManager.cs
│ │ │ ├── EasingFunctionsPage.xaml
│ │ │ ├── EasingFunctionsPage.xaml.cs
│ │ │ ├── KeyframeAnimationPage.xaml
│ │ │ ├── KeyframeAnimationPage.xaml.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── SimpleAnimationPage.xaml
│ │ │ └── SimpleAnimationPage.xaml.cs
│ │ ├── Brushes
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── Brushes.csproj
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── msbuild.png
│ │ ├── Geometries
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── Geometries.csproj
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ └── Properties
│ │ ├── Models
│ │ │ ├── Country.cs
│ │ │ ├── CountryRepository.cs
│ │ │ ├── ICountry.cs
│ │ │ └── Models.csproj
│ │ ├── ResourcesLib
│ │ │ ├── Dictionary1.xaml
│ │ │ ├── Properties
│ │ │ └── ResourcesLib.csproj
│ │ ├── Shapes
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── Shapes.csproj
│ │ ├── StylesAndResources
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── FrameworkElementExtensions.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── ResourceDemoPage.xaml
│ │ │ ├── ResourceDemoPage.xaml.cs
│ │ │ ├── Styles
│ │ │ ├── StylesAndResources.csproj
│ │ │ ├── ThemeDemoPage.xaml
│ │ │ └── ThemeDemoPage.xaml.cs
│ │ ├── StylesSamples.sln
│ │ ├── Templates
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── Images
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── StyledButtons.xaml
│ │ │ ├── StyledButtons.xaml.cs
│ │ │ ├── StyledList.xaml
│ │ │ ├── StyledList.xaml.cs
│ │ │ ├── Styles
│ │ │ └── Templates.csproj
│ │ ├── Transformations
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── SmilingFace.xaml
│ │ │ ├── SmilingFace.xaml.cs
│ │ │ └── Transformations.csproj
│ │ ├── Transitions
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── ListItemsUserControl.xaml
│ │ │ ├── ListItemsUserControl.xaml.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── PaneTransitionUserControl.xaml
│ │ │ ├── PaneTransitionUserControl.xaml.cs
│ │ │ ├── Properties
│ │ │ ├── RepositionUserControl.xaml
│ │ │ ├── RepositionUserControl.xaml.cs
│ │ │ └── Transitions.csproj
│ │ └── VisualStates
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Package.appxmanifest
│ │ ├── Properties
│ │ └── VisualStates.csproj
│ ├── 36_code
│ │ ├── AppServices
│ │ │ ├── AppServices.sln
│ │ │ ├── BooksCacheClient
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── BooksCacheClient.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── ViewModels
│ │ │ ├── BooksCacheModel
│ │ │ │ ├── Book.cs
│ │ │ │ ├── BookExtensions.cs
│ │ │ │ ├── BooksCacheModel.csproj
│ │ │ │ └── BooksRepository.cs
│ │ │ ├── BooksCacheProvider
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── BooksCacheProvider.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── BooksCacheService
│ │ │ ├── BooksCacheService.csproj
│ │ │ ├── BooksCacheTask.cs
│ │ │ └── Properties
│ │ ├── ApplicationLifetime
│ │ │ ├── ApplicationLifetime
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── ApplicationLifetime.csproj
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Page1.xaml
│ │ │ │ ├── Page1.xaml.cs
│ │ │ │ ├── Page2.xaml
│ │ │ │ ├── Page2.xaml.cs
│ │ │ │ ├── Properties
│ │ │ │ ├── Services
│ │ │ │ └── Utilities
│ │ │ └── ApplicationLifetime.sln
│ │ ├── AutoSuggestSample
│ │ │ ├── AutoSuggestSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── AutoSuggestSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── AutoSuggestSample.sln
│ │ ├── CompiledBindingLifetime
│ │ │ ├── CompiledBindingLifetime
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── CompiledBindingLifetime.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── CompiledBindingLifetime.sln
│ │ ├── CompiledBindingMethods
│ │ │ ├── CompiledBindingMethods
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── CompiledBindingMethods.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── CompiledBindingMethods.sln
│ │ ├── FlowDocumentSample
│ │ │ ├── FlowDocumentSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── F1Results.cs
│ │ │ │ ├── FlowDocumentSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── FlowDocumentSample.sln
│ │ ├── FontsSample
│ │ │ ├── FontsSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── FontsSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ └── Properties
│ │ │ └── FontsSample.sln
│ │ ├── InkSample
│ │ │ ├── InkSample
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── InkSample.csproj
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── Styles
│ │ │ └── InkSample.sln
│ │ ├── PhasedBinding
│ │ │ ├── PhasedBinding
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── Framework
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── PhasedBinding.csproj
│ │ │ │ ├── Properties
│ │ │ │ ├── Services
│ │ │ │ └── ViewModels
│ │ │ └── PhasedBinding.sln
│ │ ├── Readme.md
│ │ ├── SharingData
│ │ │ ├── ShareSource
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── BooksExtensions
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Models
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── ShareSource.csproj
│ │ │ │ └── ViewModels
│ │ │ ├── ShareTarget
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ ├── ShareTarget.csproj
│ │ │ │ ├── ShareTargetPage.xaml
│ │ │ │ ├── ShareTargetPage.xaml.cs
│ │ │ │ └── ViewModels
│ │ │ └── SharingData.sln
│ │ ├── TextOverflow
│ │ │ ├── TextOverflow
│ │ │ │ ├── App.xaml
│ │ │ │ ├── App.xaml.cs
│ │ │ │ ├── Assets
│ │ │ │ ├── MainPage.xaml
│ │ │ │ ├── MainPage.xaml.cs
│ │ │ │ ├── Package.appxmanifest
│ │ │ │ ├── Properties
│ │ │ │ └── TextOverflow.csproj
│ │ │ └── TextOverflow.sln
│ │ └── TextSample
│ │ ├── TextSample
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── TextSample.csproj
│ │ └── TextSample.sln
│ ├── 37_code
│ │ ├── PatternsXamarinShared
│ │ │ ├── BooksLib
│ │ │ │ ├── BooksLib.csproj
│ │ │ │ ├── Events
│ │ │ │ ├── Models
│ │ │ │ ├── Services
│ │ │ │ └── ViewModels
│ │ │ └── Framework
│ │ │ ├── BindableBase.cs
│ │ │ ├── ErrorInfoObject.cs
│ │ │ ├── Framework.csproj
│ │ │ ├── RelayCommand.cs
│ │ │ ├── Services
│ │ │ └── ViewModels
│ │ └── Xamarin
│ │ ├── BooksAppX
│ │ │ ├── BooksAppX
│ │ │ └── BooksAppX.sln
│ │ ├── HelloAndroid
│ │ │ ├── HelloAndroid
│ │ │ └── HelloAndroid.sln
│ │ ├── HelloiOS
│ │ │ ├── HelloiOS
│ │ │ └── HelloiOS.sln
│ │ ├── Readme.md
│ │ └── images
│ │ ├── 01_About_Windows.PNG
│ │ ├── 02_About_Android.png
│ │ ├── 03_About_iOS.PNG
│ │ ├── 04_List_Windows.PNG
│ │ ├── 05_List_Android.png
│ │ ├── 06_List_iOS.PNG
│ │ ├── 07_Detail_Windows.PNG
│ │ ├── 08_Detail_Android.png
│ │ └── 09_Detail_iOS.PNG
│ ├── bonus_01_code
│ │ ├── AttributeBasedSample
│ │ │ └── AttributeBasedSample
│ │ │ ├── AdvancedCalculator
│ │ │ ├── AttributeBasedSample.sln
│ │ │ ├── CalculatorContract
│ │ │ ├── SimpleCalculator
│ │ │ └── SimpleHost
│ │ ├── ConventionBasedSample
│ │ │ └── ConventionBasedSample
│ │ │ ├── CalculatorContract
│ │ │ ├── ConventionBasedSample.sln
│ │ │ ├── SimpleCalculator
│ │ │ └── SimpleHost
│ │ ├── Readme.md
│ │ └── UICalculator
│ │ └── UICalculator
│ │ ├── AdvancedOperations
│ │ ├── CalculatorContract
│ │ ├── CalculatorUtils
│ │ ├── CalculatorViewModels
│ │ ├── FuelEconomy
│ │ ├── SimpleCalculator
│ │ ├── TemperaturConversion
│ │ ├── UICalculator.sln
│ │ └── UWPCalculatorHost
│ ├── bonus_02_code
│ │ ├── Readme.md
│ │ └── XMLandJSONSamples
│ │ ├── JsonSample
│ │ │ ├── BookProduct.cs
│ │ │ ├── Inventory.cs
│ │ │ ├── JsonSample.csproj
│ │ │ ├── Product.cs
│ │ │ ├── Program.cs
│ │ │ ├── inventory.json
│ │ │ └── inventory.xml
│ │ ├── LinqToXmlSample
│ │ │ ├── LinqToXmlSample.csproj
│ │ │ ├── Program.cs
│ │ │ └── hamlet.xml
│ │ ├── ObjectToXmlSerializationSample
│ │ │ ├── BookProduct.cs
│ │ │ ├── Inventory.cs
│ │ │ ├── ObjectToXmlSerializationSample.csproj
│ │ │ ├── Product.cs
│ │ │ ├── Program.cs
│ │ │ ├── inventory.xml
│ │ │ └── product.xml
│ │ ├── ObjectToXmlSerializationWOAttributes
│ │ │ ├── BookProduct.cs
│ │ │ ├── Inventory.cs
│ │ │ ├── ObjectToXmlSerializationWOAttributes.csproj
│ │ │ ├── Product.cs
│ │ │ ├── Program.cs
│ │ │ └── inventory.xml
│ │ ├── XMLandJSONSamples.sln
│ │ ├── XPathNavigatorSample
│ │ │ ├── Program.cs
│ │ │ ├── XPathNavigatorSample.csproj
│ │ │ ├── books.xml
│ │ │ └── newbooks.xml
│ │ ├── XmlDocumentSample
│ │ │ ├── Program.cs
│ │ │ ├── XmlDocumentSample.csproj
│ │ │ ├── books.xml
│ │ │ └── newbooks.xml
│ │ └── XmlReaderAndWriterSample
│ │ ├── Program.cs
│ │ ├── XmlReaderAndWriterSample.csproj
│ │ ├── books.xml
│ │ └── newbooks.xml
│ ├── bonus_03_code
│ │ ├── Readme.md
│ │ ├── SignalRSample
│ │ │ ├── ChatServer
│ │ │ │ ├── ChatServer.csproj
│ │ │ │ ├── Hubs
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── package-lock.json
│ │ │ │ ├── package.json
│ │ │ │ └── wwwroot
│ │ │ ├── SignalRSample.sln
│ │ │ └── WindowsAppChatClient
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── ApplicationServices.cs
│ │ │ ├── Assets
│ │ │ ├── Framework
│ │ │ ├── GroupChatPage.xaml
│ │ │ ├── GroupChatPage.xaml.cs
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ ├── Services
│ │ │ ├── ViewModels
│ │ │ └── WindowsAppChatClient.csproj
│ │ ├── WebHooksReceiver
│ │ │ ├── WebHooksReceiver
│ │ │ │ ├── Connected Services
│ │ │ │ ├── Controllers
│ │ │ │ ├── Program.cs
│ │ │ │ ├── Services
│ │ │ │ ├── Startup.cs
│ │ │ │ ├── WebHooksReceiver.csproj
│ │ │ │ ├── appsettings.Development.json
│ │ │ │ └── appsettings.json
│ │ │ └── WebHooksReceiver.sln
│ │ └── WebSocketsSample
│ │ ├── WebSocketClient
│ │ │ ├── Program.cs
│ │ │ └── WebSocketClient.csproj
│ │ ├── WebSocketsSample.sln
│ │ └── WebSocketsServer
│ │ ├── Program.cs
│ │ ├── Startup.cs
│ │ └── WebSocketsServer.csproj
│ ├── bonus_04_code
│ │ ├── DialogBotSample
│ │ │ ├── App_Start
│ │ │ │ └── WebApiConfig.cs
│ │ │ ├── Controllers
│ │ │ │ └── MessagesController.cs
│ │ │ ├── DialogBotSample.csproj
│ │ │ ├── DialogBotSample.sln
│ │ │ ├── Dialogs
│ │ │ │ ├── EchoDialog.cs
│ │ │ │ ├── FindNumberDialog.cs
│ │ │ │ ├── OrderLunchDialog.cs
│ │ │ │ ├── ReserveTableDialog.cs
│ │ │ │ ├── ReserveTableQuery.cs
│ │ │ │ ├── RootDialog.cs
│ │ │ │ └── SupportDialog.cs
│ │ │ ├── Global.asax
│ │ │ ├── Global.asax.cs
│ │ │ ├── PostDeployScripts
│ │ │ │ ├── IncludeSources.targets
│ │ │ │ ├── githubProject.json.template
│ │ │ │ ├── prepareSrc.cmd
│ │ │ │ ├── publish.cmd.template
│ │ │ │ ├── publishProfile.xml.template
│ │ │ │ ├── publishSettings.xml.template
│ │ │ │ ├── runGulp.cmd
│ │ │ │ ├── setupGithubRemoteRepo.cmd
│ │ │ │ ├── setupVsoRemoteRepo.cmd
│ │ │ │ └── vsoProject.json.template
│ │ │ ├── Properties
│ │ │ │ └── AssemblyInfo.cs
│ │ │ ├── Web.Debug.config
│ │ │ ├── Web.Release.config
│ │ │ ├── Web.config
│ │ │ ├── build.cmd
│ │ │ ├── default.htm
│ │ │ ├── deploy.cmd
│ │ │ ├── packages.config
│ │ │ └── readme.md
│ │ ├── LUISBotSample
│ │ │ ├── App_Start
│ │ │ │ └── WebApiConfig.cs
│ │ │ ├── Controllers
│ │ │ │ └── MessagesController.cs
│ │ │ ├── Dialogs
│ │ │ │ ├── BasicLuisDialog.cs
│ │ │ │ └── RestaurantReservation.cs
│ │ │ ├── Extensions
│ │ │ │ └── DateTimeExtension.cs
│ │ │ ├── Global.asax
│ │ │ ├── Global.asax.cs
│ │ │ ├── LuisBotSample.csproj
│ │ │ ├── LuisBotSample.sln
│ │ │ ├── PostDeployScripts
│ │ │ │ ├── IncludeSources.targets
│ │ │ │ ├── githubProject.json.template
│ │ │ │ ├── prepareSrc.cmd
│ │ │ │ ├── publish.cmd.template
│ │ │ │ ├── publishProfile.xml.template
│ │ │ │ ├── publishSettings.xml.template
│ │ │ │ ├── runGulp.cmd
│ │ │ │ ├── setupGithubRemoteRepo.cmd
│ │ │ │ ├── setupVsoRemoteRepo.cmd
│ │ │ │ └── vsoProject.json.template
│ │ │ ├── Properties
│ │ │ │ └── AssemblyInfo.cs
│ │ │ ├── Web.Debug.config
│ │ │ ├── Web.Release.config
│ │ │ ├── Web.config
│ │ │ ├── build.cmd
│ │ │ ├── default.htm
│ │ │ ├── deploy.cmd
│ │ │ ├── packages.config
│ │ │ ├── publish.cmd
│ │ │ └── readme.md
│ │ ├── Readme.md
│ │ └── SimpleBotFunctions
│ │ ├── Bot.sln
│ │ ├── PostDeployScripts
│ │ │ ├── prepareSrc.cmd
│ │ │ └── runGulp.cmd
│ │ ├── commands.json
│ │ ├── debughost.cmd
│ │ ├── host.json
│ │ ├── messages
│ │ │ ├── EchoDialog.csx
│ │ │ ├── function.json
│ │ │ ├── project.json
│ │ │ └── run.csx
│ │ ├── publish.cmd
│ │ └── readme.md
│ └── bonus_05_code
│ ├── CameraSample
│ │ ├── CameraSample
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── CameraSample.csproj
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ └── Properties
│ │ └── CameraSample.sln
│ ├── MapSample
│ │ ├── MapSample
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── Converters
│ │ │ ├── Framework
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── MapSample.csproj
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── ViewModels
│ │ └── MapSample.sln
│ ├── Readme.md
│ ├── RollingMarble
│ │ ├── RollingMarble
│ │ │ ├── App.xaml
│ │ │ ├── App.xaml.cs
│ │ │ ├── Assets
│ │ │ ├── MainPage.xaml
│ │ │ ├── MainPage.xaml.cs
│ │ │ ├── Package.appxmanifest
│ │ │ ├── Properties
│ │ │ └── RollingMarble.csproj
│ │ └── RollingMarble.sln
│ └── SensorSample
│ ├── SensorSample
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ ├── Framework
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Package.appxmanifest
│ │ ├── Properties
│ │ ├── SensorSample.csproj
│ │ └── ViewModels
│ └── SensorSample.sln
└── Professional C# 7 and .NET Core 2.0(pdf code).rar_ProfessionalC#7and.NETCore2.0(pdf code).rar
787 directories, 1599 files
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论