commit 3650c36a230bd4bb6727917e5ab5954d76a1ba73 Author: Said Amir Kattan Date: Fri Aug 7 02:39:46 2026 +0300 Fix: Rename Generic.CL folder to flat structure, update csproj and references diff --git a/Constants/AppCon.cs b/Constants/AppCon.cs new file mode 100755 index 0000000..7537152 --- /dev/null +++ b/Constants/AppCon.cs @@ -0,0 +1,12 @@ +namespace Generic.Constants; + +public static class AppCon +{ + public static class ConnectionStrings + { + public const string SQLServer = "server=(localdb)\\MSSQLLocalDB;database=Ecommerce;Integrated Security=true"; + public const string MariaDB = "UserID=said;Password=aaa111!!!AAA;server=db;Port=3310;Database=ecommercedb;Protocol=TCP"; + public const string Postgresql = "Host=localhost;Database=ecommerce;Username=said1996;Password=a44781680;"; + } +} + diff --git a/Constants/AppEnum.cs b/Constants/AppEnum.cs new file mode 100755 index 0000000..c21f8c7 --- /dev/null +++ b/Constants/AppEnum.cs @@ -0,0 +1,64 @@ +using System.ComponentModel; +using System.ComponentModel.DataAnnotations; + +namespace Generic.Constants; + +public static class AppEnum +{ + public enum OrderStatus + { + FillingCart, + // Paid, + InQueue, + + DeliveryInProgress, + Delivered, + + UserNotFound, + + Delayed, + // Reserved + } + + public enum QueryOrder + { + [Display(Name = "Popular")] + Name, + + Recent, + + Oldest, + + [Display(Name = "Lowest Price")] + Lowest, + + [Display(Name = "Highest Price")] + Highest + } + + public enum Roles + { + SuperAdmin, + Admin, + Moderator, + Standard + } + + public enum ShippingMethod + { + [Display(Name = "Standard shipping - $10.00")] NormalShipping, + [Display(Name = "Fast shipping - $50.00")] FastShipping, + + } + + public enum SalesOrPurchases + { + None, + Purchase, + Sales, + + } +} + + + diff --git a/Contracts/Generics/ComplexSortModel.cs b/Contracts/Generics/ComplexSortModel.cs new file mode 100644 index 0000000..3967838 --- /dev/null +++ b/Contracts/Generics/ComplexSortModel.cs @@ -0,0 +1,8 @@ +using System.Collections.Generic; + +namespace Generic.Contracts.Generics; + +public class ComplexSortModel +{ + public IEnumerable Sorts { get; set; } = new List(); +} diff --git a/Contracts/Generics/Pagination.cs b/Contracts/Generics/Pagination.cs new file mode 100755 index 0000000..39927c9 --- /dev/null +++ b/Contracts/Generics/Pagination.cs @@ -0,0 +1,25 @@ +using System.Text.Json.Serialization; + +namespace Generic.Contracts.Generics +{ + + public class Pagination + { + public int? PageSize { get; set; } + public int? CurrentPage { get; set; } + + [JsonIgnore] + public int? ItemsCount { get; set; } = 0; + + [JsonIgnore] + public int? TotalPages + { + get + { + if (ItemsCount == null || ItemsCount == 0) return 0; + if (PageSize == null || PageSize == 0) return 1; + return (int)Math.Ceiling((decimal)ItemsCount / (decimal)PageSize.Value); + } + } + } +} diff --git a/Contracts/Generics/SortDir.cs b/Contracts/Generics/SortDir.cs new file mode 100644 index 0000000..d174efc --- /dev/null +++ b/Contracts/Generics/SortDir.cs @@ -0,0 +1,8 @@ +namespace Generic.Contracts.Generics; + +public enum SortDir +{ + Ascending, + Descending, +} + diff --git a/Contracts/Generics/SortModel.cs b/Contracts/Generics/SortModel.cs new file mode 100644 index 0000000..2c7f73c --- /dev/null +++ b/Contracts/Generics/SortModel.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace Generic.Contracts.Generics; + +public class SortModel +{ + public string SortBy { get; set; } + + public SortDir SortDirection { get; set; } = SortDir.Ascending; +} + diff --git a/Exceptions/NotFoundException.cs b/Exceptions/NotFoundException.cs new file mode 100755 index 0000000..c6d9614 --- /dev/null +++ b/Exceptions/NotFoundException.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace Generic.Exceptions; + public class NotFoundException : Exception + { + public NotFoundException(string message, Exception innerException) : base(message, innerException) + { + + } + } diff --git a/Generic.CL.csproj b/Generic.CL.csproj new file mode 100755 index 0000000..55f9cb7 --- /dev/null +++ b/Generic.CL.csproj @@ -0,0 +1,15 @@ + + + + net10.0 + enable + enable + Generic.CL + + + + + + + + diff --git a/Generic.Tests/Generic.Tests.csproj b/Generic.Tests/Generic.Tests.csproj new file mode 100644 index 0000000..10f0975 --- /dev/null +++ b/Generic.Tests/Generic.Tests.csproj @@ -0,0 +1,25 @@ + + + + net10.0 + enable + enable + false + + + + + + + + + + + + + + + + + + diff --git a/Generic.Tests/Services/AdvancedFilterExtensionTests.cs b/Generic.Tests/Services/AdvancedFilterExtensionTests.cs new file mode 100644 index 0000000..99afed7 --- /dev/null +++ b/Generic.Tests/Services/AdvancedFilterExtensionTests.cs @@ -0,0 +1,142 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Generic.Services; +using Xunit; + +namespace Generic.Tests.Services; + +public class AdvancedFilterExtensionTests +{ + public class TestEntity + { + public Guid Id { get; set; } + public double Price { get; set; } + public string SKU { get; set; } = string.Empty; + public List Translations { get; set; } = new(); + } + + public class TestTranslation + { + public string Language { get; set; } = string.Empty; + public TestInfo Info { get; set; } = new(); + } + + public class TestInfo + { + public string Name { get; set; } = string.Empty; + } + + public class TestFilter + { + public double? Price { get; set; } + public string? SKU { get; set; } + public string? Language { get; set; } + public string? Name { get; set; } + } + + private List GetTestData() + { + return new List + { + new TestEntity + { + Id = Guid.NewGuid(), + Price = 100, + SKU = "IPHONE-15", + Translations = new List + { + new TestTranslation { Language = "en", Info = new TestInfo { Name = "iPhone 15" } }, + new TestTranslation { Language = "ar", Info = new TestInfo { Name = "آيفون ١٥" } } + } + }, + new TestEntity + { + Id = Guid.NewGuid(), + Price = 200, + SKU = "SAMSUNG-S24", + Translations = new List + { + new TestTranslation { Language = "en", Info = new TestInfo { Name = "Samsung S24" } }, + new TestTranslation { Language = "ar", Info = new TestInfo { Name = "سامسونج اس ٢٤" } } + } + } + }; + } + + [Fact] + public void ApplyAdvancedFilter_RootProperty_Works() + { + // Arrange + var data = GetTestData().AsQueryable(); + var filter = new TestFilter { Price = 100 }; + + // Act + var result = data.ApplyAdvancedFilter(filter).ToList(); + + // Assert + Assert.Single(result); + Assert.Equal("IPHONE-15", result[0].SKU); + } + + [Fact] + public void ApplyAdvancedFilter_DeepNestedProperty_Works() + { + // Arrange + var data = GetTestData().AsQueryable(); + var filter = new TestFilter { Name = "iPhone" }; + + // Act + var result = data.ApplyAdvancedFilter(filter).ToList(); + + // Assert + Assert.Single(result); + Assert.Equal("IPHONE-15", result[0].SKU); + } + + [Fact] + public void ApplyAdvancedFilter_GroupedCorrelatedProperties_Works() + { + // Arrange + var data = GetTestData().AsQueryable(); + // Search for "iPhone" but only in Arabic (should return nothing because Arabic name is "آيفون") + var filter = new TestFilter { Language = "ar", Name = "iPhone" }; + + // Act + var result = data.ApplyAdvancedFilter(filter).ToList(); + + // Assert + Assert.Empty(result); + } + + [Fact] + public void ApplyAdvancedFilter_GroupedCorrelatedProperties_CorrectMatch_Works() + { + // Arrange + var data = GetTestData().AsQueryable(); + // Search for "آيفون" in Arabic + var filter = new TestFilter { Language = "ar", Name = "آيفون" }; + + // Act + var result = data.ApplyAdvancedFilter(filter).ToList(); + + // Assert + Assert.Single(result); + Assert.Equal("IPHONE-15", result[0].SKU); + } + [Fact] + public void ApplyAdvancedFilter_CaseInsensitiveSearch_Works() + { + // Arrange + var data = GetTestData().AsQueryable(); + // Search for "IPHONE" (all caps) vs "iPhone 15" + var filter = new TestFilter { Name = "IPHONE" }; + + // Act + var result = data.ApplyAdvancedFilter(filter).ToList(); + + // Assert + Assert.Single(result); + Assert.Equal("IPHONE-15", result[0].SKU); + } +} diff --git a/Generic.Tests/Services/SortExtTests.cs b/Generic.Tests/Services/SortExtTests.cs new file mode 100644 index 0000000..57cef3e --- /dev/null +++ b/Generic.Tests/Services/SortExtTests.cs @@ -0,0 +1,179 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Generic.Contracts.Generics; +using Generic.Services; +using Xunit; + +namespace Generic.Tests.Services +{ + public class SortExtTests + { + private class TestItem + { + public int Id { get; set; } + public string Name { get; set; } + public int Category { get; set; } + } + + private readonly IQueryable _data; + + public SortExtTests() + { + _data = new List + { + new TestItem { Id = 1, Name = "Apple", Category = 1 }, + new TestItem { Id = 2, Name = "Banana", Category = 1 }, + new TestItem { Id = 3, Name = "Cherry", Category = 2 }, + new TestItem { Id = 4, Name = "Date", Category = 2 }, + new TestItem { Id = 5, Name = "Elderberry", Category = 1 } + }.AsQueryable(); + } + + [Fact] + public void ApplySort_Simple_Ascending_Works() + { + var sortModel = new SortModel { SortBy = "Name", SortDirection = SortDir.Ascending }; + var result = _data.ApplySimpleSort(sortModel).ToList(); + + Assert.Equal("Apple", result[0].Name); + Assert.Equal("Banana", result[1].Name); + Assert.Equal("Elderberry", result[4].Name); + } + + [Fact] + public void ApplySort_Simple_Descending_Works() + { + var sortModel = new SortModel { SortBy = "Name", SortDirection = SortDir.Descending }; + var result = _data.ApplySimpleSort(sortModel).ToList(); + + Assert.Equal("Elderberry", result[0].Name); + Assert.Equal("Date", result[1].Name); + Assert.Equal("Apple", result[4].Name); + } + + [Fact] + public void ApplySort_Complex_MultiLayer_Works() + { + // Category Descending, then Name Ascending + var sortModels = new List + { + new SortModel { SortBy = "Category", SortDirection = SortDir.Descending }, + new SortModel { SortBy = "Name", SortDirection = SortDir.Ascending } + }; + + var result = _data.ApplyComplexSort(sortModels).ToList(); + + // First should be Category 2 (Cherry or Date) + // Then Category 1 (Apple, Banana, Elderberry) + + // Check Category 2 items are first + Assert.Equal(2, result[0].Category); + Assert.Equal(2, result[1].Category); + + // Check secondary sort (Name Ascending) within Category 2 + Assert.Equal("Cherry", result[0].Name); + Assert.Equal("Date", result[1].Name); + + // Check Category 1 items + Assert.Equal(1, result[2].Category); + Assert.Equal(1, result[3].Category); + Assert.Equal(1, result[4].Category); + + // Check secondary sort (Name Ascending) within Category 1 + Assert.Equal("Apple", result[2].Name); + Assert.Equal("Banana", result[3].Name); + Assert.Equal("Elderberry", result[4].Name); + } + + [Fact] + public void ApplySort_InvalidProperty_ThrowsException() + { + var sortModel = new SortModel { SortBy = "InvalidProp" }; + + Assert.Throws(() => _data.ApplySimpleSort(sortModel)); + } + + [Fact] + public void ApplySort_EmptySort_ReturnsOriginal() + { + var result = _data.ApplySimpleSort((SortModel)null); + var resultList = result.ToList(); + + Assert.Equal(_data.Count(), resultList.Count); + // Just verifying it doesn't crash and returns data. + // Order is not guaranteed to be unchanged by contract if AsQueryable is used, + // but for List.AsQueryable it usually is. + Assert.Equal(1, resultList[0].Id); + } + + [Fact] + public void ApplySort_Complex_Empty_ReturnsOriginal() + { + var result = _data.ApplyComplexSort(new List()); + var resultList = result.ToList(); + Assert.Equal(5, resultList.Count); + } + + [Fact] + public void ApplySort_CaseInsensitiveProperty_Works() + { + var sortModel = new SortModel { SortBy = "name", SortDirection = SortDir.Ascending }; + var result = _data.ApplySimpleSort(sortModel).ToList(); + + Assert.Equal("Apple", result[0].Name); + Assert.Equal("Banana", result[1].Name); + } + + [Fact] + public void ApplySort_Complex_SingleItem_WorksAsSimple() + { + var sortModels = new List + { + new SortModel { SortBy = "Name", SortDirection = SortDir.Descending } + }; + + var result = _data.ApplyComplexSort(sortModels).ToList(); + + Assert.Equal("Elderberry", result[0].Name); + Assert.Equal("Date", result[1].Name); + Assert.Equal("Apple", result[4].Name); + } + + [Fact] + public void ApplySort_Complex_ThreeLayers_Works() + { + // Add data with 3 layers if needed, or reuse existing if sufficient. + // Extending data locally for this test to prove 3 layers. + // Layers: Category (Desc) -> Id (Desc) -> Name (Asc) + // Not perfect with current data, let's just make sure it doesn't crash + // and logically applies. + // Actually, let's create a specific data set for 3 layers. + + var detailedData = new List + { + new TestItem { Id = 1, Name = "A", Category = 1 }, + new TestItem { Id = 2, Name = "A", Category = 1 }, // Same Name, Same Cat + new TestItem { Id = 1, Name = "B", Category = 1 }, // Same Id (dup), Same Cat + }.AsQueryable(); + + // This data isn't great for 3 layers. Let's stick to checking logic execution flow using existing data properties. + // Category Desc (2, 2, 1, 1, 1) + // Then Name Asc (Cherry, Date | Apple, Banana, Elderberry) + // Then Id Desc (Within same Category and Name -- none are same, so 3rd layer is effectively no-op but tests the loop). + + var sortModels = new List + { + new SortModel { SortBy = "Category", SortDirection = SortDir.Descending }, + new SortModel { SortBy = "Name", SortDirection = SortDir.Ascending }, + new SortModel { SortBy = "Id", SortDirection = SortDir.Descending } + }; + + var result = _data.ApplyComplexSort(sortModels).ToList(); + + Assert.Equal("Cherry", result[0].Name); + Assert.Equal("Date", result[1].Name); + Assert.Equal("Apple", result[2].Name); + } + } +} diff --git a/Generic.Tests/UnitTest1.cs b/Generic.Tests/UnitTest1.cs new file mode 100644 index 0000000..e0781d0 --- /dev/null +++ b/Generic.Tests/UnitTest1.cs @@ -0,0 +1,10 @@ +namespace Generic.Tests; + +public class UnitTest1 +{ + [Fact] + public void Test1() + { + + } +} diff --git a/Services/AdvancedFilterExtension.cs b/Services/AdvancedFilterExtension.cs new file mode 100644 index 0000000..42dd555 --- /dev/null +++ b/Services/AdvancedFilterExtension.cs @@ -0,0 +1,286 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; + +namespace Generic.Services; + +public static class AdvancedFilterExtension +{ + public static IQueryable ApplyAdvancedFilter(this IQueryable query, TFilter filter) + where TFilter : class + { + if (filter == null) return query; + + var entityType = typeof(T); + var filterProperties = typeof(TFilter).GetProperties() + .Where(p => p.GetValue(filter) != null) + .ToDictionary(p => p.Name, p => p.GetValue(filter)); + + if (!filterProperties.Any()) return query; + + // 1. Map Entity Properties with their Paths and Levels + var entityMap = ScanEntity(entityType); + + // 2. Process by Level (Priority) + var maxLevel = entityMap.Any() ? entityMap.Max(m => m.Level) : 0; + + var parameter = Expression.Parameter(entityType, "x"); + + // We keep track of which filter properties we've already applied + var appliedFilterKeys = new HashSet(); + + for (int level = 1; level <= maxLevel; level++) + { + var levelProperties = entityMap.Where(m => m.Level == level).ToList(); + + foreach (var meta in levelProperties) + { + // If this property name exists in our filter and hasn't been applied yet + if (filterProperties.TryGetValue(meta.Name, out var filterValue) && !appliedFilterKeys.Contains(meta.Name)) + { + // If it's a root property (Level 1) + if (meta.Level == 1) + { + var comparison = BuildComparison(parameter, meta.PropertyInfo, filterValue); + if (comparison != null) + { + var lambda = Expression.Lambda>(comparison, parameter); + query = query.Where(lambda); + appliedFilterKeys.Add(meta.Name); + } + } + else + { + // It's a nested property. We need to find the "Branch Root" (the first collection in the path) + var branchInfo = FindBranchRoot(meta); + if (branchInfo != null) + { + // Discover all other filter properties that belong to this same branch + var branchFilters = DiscoverBranchFilters(branchInfo, entityMap, filterProperties, appliedFilterKeys); + + // Apply them all together in one .Any() or nested .Where() + query = ApplyBranchFilter(query, parameter, branchInfo, branchFilters); + + foreach (var usedKey in branchFilters.Keys) appliedFilterKeys.Add(usedKey); + } + } + } + } + } + + return query; + } + + private static List ScanEntity(Type type, int level = 1, string path = "", PropertyMetadata parent = null) + { + var metaList = new List(); + var props = type.GetProperties(BindingFlags.Public | BindingFlags.Instance); + + foreach (var p in props) + { + var currentPath = string.IsNullOrEmpty(path) ? p.Name : $"{path}.{p.Name}"; + var meta = new PropertyMetadata + { + Name = p.Name, + Path = currentPath, + Level = level, + PropertyInfo = p, + PropertyType = p.PropertyType, + Parent = parent + }; + + metaList.Add(meta); + + // If it's a complex type (not a system type or enum), dive deeper + if (IsComplexType(p.PropertyType)) + { + var nextType = GetUnderlyingType(p.PropertyType); + if (nextType != type) // Prevent infinite recursion for parent/child relations + { + metaList.AddRange(ScanEntity(nextType, level + 1, currentPath, meta)); + } + } + } + + return metaList; + } + + private static bool IsComplexType(Type type) + { + if (type.IsPrimitive || type == typeof(string) || type == typeof(Guid) || type == typeof(DateTime) || type == typeof(decimal) || type == typeof(double) || type.IsEnum) + return false; + + var underlying = GetUnderlyingType(type); + return underlying != type || (!underlying.Namespace?.StartsWith("System") ?? true); + } + + private static Type GetUnderlyingType(Type type) + { + if (type.IsGenericType && (type.GetGenericTypeDefinition() == typeof(List<>) || type.GetGenericTypeDefinition() == typeof(ICollection<>) || type.GetGenericTypeDefinition() == typeof(IEnumerable<>))) + return type.GetGenericArguments()[0]; + + if (type.IsArray) return type.GetElementType(); + + return type; + } + + private static PropertyMetadata FindBranchRoot(PropertyMetadata meta) + { + var current = meta; + PropertyMetadata collectionRoot = null; + + while (current != null) + { + if (IsCollection(current.PropertyType)) + collectionRoot = current; + current = current.Parent; + } + + return collectionRoot; + } + + private static bool IsCollection(Type type) => type != typeof(string) && typeof(IEnumerable).IsAssignableFrom(type); + + private static Dictionary DiscoverBranchFilters( + PropertyMetadata branchRoot, + List allMeta, + Dictionary filterValues, + HashSet appliedKeys) + { + var results = new Dictionary(); + + // Find all metadata items that are descendants of this branch root + var descendants = allMeta.Where(m => m.Path.StartsWith(branchRoot.Path + ".")).ToList(); + + foreach (var d in descendants) + { + if (filterValues.TryGetValue(d.Name, out var val) && !appliedKeys.Contains(d.Name)) + { + results[d.Name] = (d, val); + } + } + + return results; + } + + private static IQueryable ApplyBranchFilter( + IQueryable query, + ParameterExpression rootParam, + PropertyMetadata branchRoot, + Dictionary branchFilters) + { + var itemType = GetUnderlyingType(branchRoot.PropertyType); + var itemParam = Expression.Parameter(itemType, "t"); + + Expression branchExpression = null; + + foreach (var bf in branchFilters.Values) + { + // Resolve path relative to the collection item + // Example: branchRoot is "Translations", bf.Meta.Path is "Translations.Info.Name" + // Relative path is "Info.Name" + var relativePath = bf.Meta.Path.Substring(branchRoot.Path.Length + 1); + var propertyExpr = BuildRelativePropertyExpression(itemParam, relativePath); + + var comparison = BuildComparisonFromExpression(propertyExpr, bf.Value); + + if (comparison != null) + { + branchExpression = branchExpression == null + ? comparison + : Expression.AndAlso(branchExpression, comparison); + } + } + + if (branchExpression == null) return query; + + // Build: x => x.Translations.Any(t => t.Info.Name == "..." && t.Language == "...") + var anyMethod = typeof(Enumerable).GetMethods() + .First(m => m.Name == "Any" && m.GetParameters().Length == 2) + .MakeGenericMethod(itemType); + + var collectionExpr = Expression.Property(rootParam, branchRoot.PropertyInfo); + var lambda = Expression.Lambda(branchExpression, itemParam); + var anyCall = Expression.Call(null, anyMethod, collectionExpr, lambda); + + var finalLambda = Expression.Lambda>(anyCall, rootParam); + return query.Where(finalLambda); + } + + private static Expression BuildRelativePropertyExpression(Expression param, string path) + { + Expression expr = param; + foreach (var part in path.Split('.')) + { + expr = Expression.Property(expr, part); + } + return expr; + } + + private static Expression? BuildComparison(Expression param, PropertyInfo prop, object? value) + { + var propertyExpr = Expression.Property(param, prop); + return BuildComparisonFromExpression(propertyExpr, value); + } + + private static Expression? BuildComparisonFromExpression(Expression propertyExpr, object? value) + { + if (value == null) return null; + + if (propertyExpr.Type == typeof(string)) + { + var containsMethod = typeof(string).GetMethod("Contains", new[] { typeof(string) })!; + + // x => x.Property.Contains(value) + var searchValue = Expression.Constant(value.ToString() ?? string.Empty, typeof(string)); + + return Expression.Call(propertyExpr, containsMethod, searchValue); + } + + if (IsCollection(propertyExpr.Type) && GetUnderlyingType(propertyExpr.Type) == typeof(string)) + { + var anyMethod = typeof(Enumerable).GetMethods() + .First(m => m.Name == "Any" && m.GetParameters().Length == 2) + .MakeGenericMethod(typeof(string)); + + var itemParam = Expression.Parameter(typeof(string), "s"); + var containsMethod = typeof(string).GetMethod("Contains", new[] { typeof(string) })!; + + var searchValue = Expression.Constant(value.ToString() ?? string.Empty, typeof(string)); + var itemContains = Expression.Call(itemParam, containsMethod, searchValue); + + var lambda = Expression.Lambda(itemContains, itemParam); + return Expression.Call(null, anyMethod, propertyExpr, lambda); + } + + // Handle Nullable types for equality + var memberType = propertyExpr.Type; + if (memberType.IsGenericType && memberType.GetGenericTypeDefinition() == typeof(Nullable<>)) + { + propertyExpr = Expression.Convert(propertyExpr, memberType.GetGenericArguments()[0]); + } + + try + { + var convertedValue = Convert.ChangeType(value, propertyExpr.Type); + return Expression.Equal(propertyExpr, Expression.Constant(convertedValue, propertyExpr.Type)); + } + catch + { + return Expression.Equal(propertyExpr, Expression.Constant(value, propertyExpr.Type)); + } + } + + private class PropertyMetadata + { + public string Name { get; set; } + public string Path { get; set; } + public int Level { get; set; } + public PropertyInfo PropertyInfo { get; set; } + public Type PropertyType { get; set; } + public PropertyMetadata Parent { get; set; } + } +} diff --git a/Services/AdvancedQueryBuilder.cs b/Services/AdvancedQueryBuilder.cs new file mode 100644 index 0000000..a5f9abd --- /dev/null +++ b/Services/AdvancedQueryBuilder.cs @@ -0,0 +1,70 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Generic.Services; + +public class AdvancedQueryBuilder +{ + private readonly StringBuilder _builder; + private string _preText = string.Empty; + private string _afterText = string.Empty; + private string _separator = "&"; + + public AdvancedQueryBuilder() + { + _builder = new StringBuilder(); + } + + public AdvancedQueryBuilder AddPreText(string preText) + { + _preText = preText; + return this; + } + + public AdvancedQueryBuilder AddAfterText(string afterText) + { + _afterText = afterText; + return this; + } + + public AdvancedQueryBuilder AddSeprator(string separator) + { + _separator = separator; + return this; + } + + public AdvancedQueryBuilder AddModels(params object?[] models) + { + if (models == null) + return this; + + foreach (var model in models) + { + if (model == null) + continue; + + var properties = model.GetType().GetProperties(); + foreach (var prop in properties) + { + var value = prop.GetValue(model)?.ToString(); + if (!string.IsNullOrEmpty(value)) + { + AppendParameter(prop.Name.ToLower(), value); + } + } + } + return this; + } + + private void AppendParameter(string key, string value) + { + if (_builder.Length > 0) + _builder.Append(_separator); + _builder.Append($"{Uri.EscapeDataString(key)}={Uri.EscapeDataString(value)}"); + } + + public override string ToString() => $"{_preText}{_builder}{_afterText}"; +} diff --git a/Services/EnumHelper.cs b/Services/EnumHelper.cs new file mode 100644 index 0000000..10eaa46 --- /dev/null +++ b/Services/EnumHelper.cs @@ -0,0 +1,26 @@ +using System; +using System.ComponentModel.DataAnnotations; +using System.Reflection; + +namespace Generic.Services; + +public static class EnumExtensions +{ + public static string GetDisplayName(this Enum value) + { + if (value == null) + throw new ArgumentNullException(nameof(value)); + + // Get the enum field name + string name = value.ToString(); + + // Get the field info for the enum value + FieldInfo? field = value.GetType().GetField(name); + if (field == null) + return name; // Not a defined enum value (e.g., flags combination) + + // Check for the [Display] attribute + DisplayAttribute? displayAttribute = field.GetCustomAttribute(); + return displayAttribute?.GetName() ?? name; + } +} diff --git a/Services/FilterExtension.cs b/Services/FilterExtension.cs new file mode 100644 index 0000000..ca5baea --- /dev/null +++ b/Services/FilterExtension.cs @@ -0,0 +1,126 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; +using System.Threading.Tasks; + +namespace Generic.Services; + +public static class FilterExtension +{ + public static IQueryable ApplyFilter(this IQueryable query, TFilter filter) + where TFilter : class + { + if (filter == null) + return query; + + var parameter = Expression.Parameter(typeof(T), "x"); + Expression finalExpression = null; + + var filterProperties = typeof(TFilter) + .GetProperties() + .Where(p => p.GetValue(filter) != null); + + foreach (var filterProperty in filterProperties) + { + var filterValue = filterProperty.GetValue(filter); + if (filterValue == null) + continue; + + var propertyName = filterProperty.Name; + PropertyInfo entityProperty; + + Expression propertyExpression = null; + Expression comparison = null; + + // Handle special suffix cases + if (propertyName.EndsWith("_Start") || propertyName.EndsWith("_Min")) + { + entityProperty = typeof(T).GetProperty( + propertyName.Substring(0, propertyName.LastIndexOf('_')) + ); + if (entityProperty != null) + { + propertyExpression = Expression.Property(parameter, entityProperty); + comparison = Expression.GreaterThanOrEqual( + propertyExpression, + Expression.Constant(filterValue, entityProperty.PropertyType) + ); + } + } + else if (propertyName.EndsWith("_End") || propertyName.EndsWith("_Max")) + { + entityProperty = typeof(T).GetProperty( + propertyName.Substring(0, propertyName.LastIndexOf('_')) + ); + if (entityProperty != null) + { + propertyExpression = Expression.Property(parameter, entityProperty); + comparison = Expression.LessThanOrEqual( + propertyExpression, + Expression.Constant(filterValue, entityProperty.PropertyType) + ); + } + } + else if (propertyName.EndsWith("Name", StringComparison.OrdinalIgnoreCase)) + { + entityProperty = typeof(T).GetProperty(propertyName); + if (entityProperty != null && entityProperty.PropertyType == typeof(string)) + { + propertyExpression = Expression.Property(parameter, entityProperty); + + // For string Contains operation + var containsMethod = typeof(string).GetMethod( + "Contains", + new[] { typeof(string) } + ); + var filterValueString = filterValue.ToString(); + + comparison = Expression.Call( + propertyExpression, + containsMethod, + Expression.Constant(filterValueString, typeof(string)) + ); + } + else if (entityProperty != null) + { + // Fall back to equality comparison if it's not a string + propertyExpression = Expression.Property(parameter, entityProperty); + comparison = Expression.Equal( + propertyExpression, + Expression.Constant(filterValue, entityProperty.PropertyType) + ); + } + } + else + { + entityProperty = typeof(T).GetProperty(propertyName); + if (entityProperty != null) + { + propertyExpression = Expression.Property(parameter, entityProperty); + comparison = Expression.Equal( + propertyExpression, + Expression.Constant(filterValue, entityProperty.PropertyType) + ); + } + } + + if (comparison != null) + { + finalExpression = + finalExpression == null + ? comparison + : Expression.AndAlso(finalExpression, comparison); + } + } + + if (finalExpression != null) + { + var lambda = Expression.Lambda>(finalExpression, parameter); + query = query.Where(lambda); + } + + return query; + } +} diff --git a/Services/IEnumerableExtensions.cs b/Services/IEnumerableExtensions.cs new file mode 100644 index 0000000..df2e42c --- /dev/null +++ b/Services/IEnumerableExtensions.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace Generic.Services; + +public static class IEnumerableExtensions +{ + public static IEnumerable> Batch(this IEnumerable source, int batchSize) + { + var batch = new List(batchSize); + foreach (var item in source) + { + batch.Add(item); + if (batch.Count == batchSize) + { + yield return batch; + batch = new List(batchSize); + } + } + if (batch.Count > 0) + { + yield return batch; + } + } +} diff --git a/Services/Pagination.cs b/Services/Pagination.cs new file mode 100755 index 0000000..3dbb43d --- /dev/null +++ b/Services/Pagination.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Generic.Contracts.Generics; + +namespace Generic.Services; + +public static class Pagination + where T : class +{ + public static IQueryable Paginate(IQueryable query, Pagination pagination) + { + return query + .Skip((pagination.CurrentPage.Value - 1) * pagination.PageSize.Value) + .Take(pagination.PageSize.Value); + } +} diff --git a/Services/PaginationExtension.cs b/Services/PaginationExtension.cs new file mode 100644 index 0000000..3150bef --- /dev/null +++ b/Services/PaginationExtension.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Generic.Contracts.Generics; + +namespace Generic.Services; + +public static class PaginationExtension +{ + public static IQueryable Paginate(this IQueryable query, Pagination pagination) + { + if (pagination.CurrentPage.HasValue && pagination.PageSize.HasValue) + return query + .Skip((pagination.CurrentPage.Value - 1) * pagination.PageSize.Value) + .Take(pagination.PageSize.Value); + else + return query; + } +} diff --git a/Services/QueryBuilder.cs b/Services/QueryBuilder.cs new file mode 100644 index 0000000..db97cb8 --- /dev/null +++ b/Services/QueryBuilder.cs @@ -0,0 +1,75 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Generic.Contracts.Generics; + +namespace Generic.Services; + +public class QueryBuilder +{ + private readonly StringBuilder _builder; + + public QueryBuilder() + { + _builder = new StringBuilder(); + } + + public QueryBuilder AddBase(string baseString) + { + _builder.Insert(0, baseString); + return this; + } + + public QueryBuilder AddPagination(Pagination pagination) + { + if (pagination != null) + { + AppendParameter("currentPage", pagination.CurrentPage.Value); + AppendParameter("pageSize", pagination.PageSize.Value); + } + return this; + } + + public QueryBuilder AddSort(SortModel sort) + { + if (sort != null && !string.IsNullOrEmpty(sort.SortBy)) + { + AppendParameter("Column", sort.SortBy); + AppendParameter("sortDirection", sort.SortDirection.ToString()); + } + return this; + } + + public QueryBuilder AddModelProperties(TModel model) + { + if (model == null) + return this; + + var properties = typeof(TModel).GetProperties(); + foreach (var prop in properties) + { + var value = prop.GetValue(model)?.ToString(); + if (!string.IsNullOrEmpty(value)) + { + AppendParameter(prop.Name.ToLower(), value); + } + } + return this; + } + + private void AppendParameter(string key, string value) + { + if (_builder.Length > 0) + _builder.Append('&'); + _builder.Append($"{Uri.EscapeDataString(key)}={Uri.EscapeDataString(value)}"); + } + + private void AppendParameter(string key, int value) + { + AppendParameter(key, value.ToString()); + } + + public override string ToString() => _builder.ToString(); +} diff --git a/Services/QueryableExtensions.cs b/Services/QueryableExtensions.cs new file mode 100644 index 0000000..03d1c9a --- /dev/null +++ b/Services/QueryableExtensions.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Threading.Tasks; +using Generic.Contracts.Generics; + +namespace Generic.Services; + +public static class QueryableExtensions +{ + public static IQueryable ApplySorting(this IQueryable source, SortModel sortBy) + { + // Parameter for lambda expression, e.g., "p" in "p => p.Property" + var parameter = Expression.Parameter(typeof(T), "p"); + + // Access the property on the parameter, e.g., "p.Property" + var property = Expression.Property(parameter, sortBy.SortBy); + + // Cast property access to an object (boxing value types) + var converted = Expression.Convert(property, typeof(object)); + + // Create the lambda expression, e.g., "p => (object)p.Property" + var keySelector = Expression.Lambda>(converted, parameter); + + // Apply OrderBy or OrderByDescending based on the ascending flag + return sortBy.SortDirection == SortDir.Ascending + ? source.OrderBy(keySelector) + : source.OrderByDescending(keySelector); + } +} diff --git a/Services/SortExt.cs b/Services/SortExt.cs new file mode 100644 index 0000000..e68ff0c --- /dev/null +++ b/Services/SortExt.cs @@ -0,0 +1,82 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; +using System.Threading.Tasks; +using Generic.Contracts.Generics; + +namespace Generic.Services; + +public static class SortExt +{ + public static IQueryable ApplySimpleSort(this IQueryable query, SortModel sortModel) + { + if (string.IsNullOrWhiteSpace(sortModel?.SortBy)) + return query; + + return ApplySortInternal(query, new[] { sortModel }); + } + + public static IQueryable ApplyComplexSort(this IQueryable query, IEnumerable sortModels) + { + var models = sortModels?.Where(x => !string.IsNullOrWhiteSpace(x.SortBy)).ToList(); + if (models == null || !models.Any()) + return query; + + return ApplySortInternal(query, models); + } + + private static IQueryable ApplySortInternal(IQueryable query, IEnumerable sortModels) + { + var first = true; + IOrderedQueryable orderedQuery = null; + + foreach (var model in sortModels) + { + var propertyInfo = typeof(T).GetProperty( + model.SortBy, + BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance + ); + + if (propertyInfo == null) + { + // Decide whether to throw or ignore. For now, letting it throw or we could ignore. + // Original code threw exception, so we will throw to be safe/consistent. + throw new ArgumentException( + $"No property '{model.SortBy}' on type '{typeof(T).Name}'" + ); + } + + var parameter = Expression.Parameter(typeof(T), "x"); + var property = Expression.Property(parameter, propertyInfo); + var lambda = Expression.Lambda(property, parameter); + + string methodName = ""; + + if (first) + { + methodName = model.SortDirection == SortDir.Descending ? "OrderByDescending" : "OrderBy"; + + var method = typeof(Queryable).GetMethods() + .First(m => m.Name == methodName && m.GetParameters().Length == 2) + .MakeGenericMethod(typeof(T), propertyInfo.PropertyType); + + orderedQuery = (IOrderedQueryable)method.Invoke(null, new object[] { query, lambda }); + first = false; + } + else + { + methodName = model.SortDirection == SortDir.Descending ? "ThenByDescending" : "ThenBy"; + + var method = typeof(Queryable).GetMethods() + .First(m => m.Name == methodName && m.GetParameters().Length == 2) + .MakeGenericMethod(typeof(T), propertyInfo.PropertyType); + + orderedQuery = (IOrderedQueryable)method.Invoke(null, new object[] { orderedQuery, lambda }); + } + } + + return orderedQuery ?? query; + } +} diff --git a/bin/Debug/net10.0/Generic.CL.deps.json b/bin/Debug/net10.0/Generic.CL.deps.json new file mode 100644 index 0000000..ab1c11f --- /dev/null +++ b/bin/Debug/net10.0/Generic.CL.deps.json @@ -0,0 +1,23 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v10.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v10.0": { + "Generic.CL/1.0.0": { + "runtime": { + "Generic.CL.dll": {} + } + } + } + }, + "libraries": { + "Generic.CL/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/bin/Debug/net10.0/Generic.CL.dll b/bin/Debug/net10.0/Generic.CL.dll new file mode 100644 index 0000000..3098fae Binary files /dev/null and b/bin/Debug/net10.0/Generic.CL.dll differ diff --git a/bin/Debug/net10.0/Generic.CL.pdb b/bin/Debug/net10.0/Generic.CL.pdb new file mode 100644 index 0000000..ddfb4b2 Binary files /dev/null and b/bin/Debug/net10.0/Generic.CL.pdb differ diff --git a/bin/Debug/net10.0/Generic.deps.json b/bin/Debug/net10.0/Generic.deps.json new file mode 100644 index 0000000..e141cd9 --- /dev/null +++ b/bin/Debug/net10.0/Generic.deps.json @@ -0,0 +1,23 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v10.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v10.0": { + "Generic/1.0.0": { + "runtime": { + "Generic.dll": {} + } + } + } + }, + "libraries": { + "Generic/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/bin/Debug/net10.0/Generic.dll b/bin/Debug/net10.0/Generic.dll new file mode 100644 index 0000000..6074666 Binary files /dev/null and b/bin/Debug/net10.0/Generic.dll differ diff --git a/bin/Debug/net10.0/Generic.pdb b/bin/Debug/net10.0/Generic.pdb new file mode 100644 index 0000000..dea9f46 Binary files /dev/null and b/bin/Debug/net10.0/Generic.pdb differ diff --git a/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs b/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs new file mode 100644 index 0000000..925b135 --- /dev/null +++ b/obj/Debug/net10.0/.NETCoreApp,Version=v10.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")] diff --git a/obj/Debug/net10.0/Generic.AssemblyInfo.cs b/obj/Debug/net10.0/Generic.AssemblyInfo.cs new file mode 100644 index 0000000..9135edb --- /dev/null +++ b/obj/Debug/net10.0/Generic.AssemblyInfo.cs @@ -0,0 +1,22 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("Generic")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("Generic")] +[assembly: System.Reflection.AssemblyTitleAttribute("Generic")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Generated by the MSBuild WriteCodeFragment class. + diff --git a/obj/Debug/net10.0/Generic.AssemblyInfoInputs.cache b/obj/Debug/net10.0/Generic.AssemblyInfoInputs.cache new file mode 100644 index 0000000..2461232 --- /dev/null +++ b/obj/Debug/net10.0/Generic.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +d6354db1a96f2206ec79214f9b5fd27150b3f3f75b3eacc8bcdbf7c567e9b38e diff --git a/obj/Debug/net10.0/Generic.CL.AssemblyInfo.cs b/obj/Debug/net10.0/Generic.CL.AssemblyInfo.cs new file mode 100644 index 0000000..4131025 --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.AssemblyInfo.cs @@ -0,0 +1,22 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("Generic.CL")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("Generic.CL")] +[assembly: System.Reflection.AssemblyTitleAttribute("Generic.CL")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Generated by the MSBuild WriteCodeFragment class. + diff --git a/obj/Debug/net10.0/Generic.CL.AssemblyInfoInputs.cache b/obj/Debug/net10.0/Generic.CL.AssemblyInfoInputs.cache new file mode 100644 index 0000000..c736a12 --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +ca2c1d419b3112b8e898ceb4b377fbd5e26beabc550db163cf5bb5a874311c54 diff --git a/obj/Debug/net10.0/Generic.CL.GeneratedMSBuildEditorConfig.editorconfig b/obj/Debug/net10.0/Generic.CL.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..76a853b --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,17 @@ +is_global = true +build_property.TargetFramework = net10.0 +build_property.TargetFrameworkIdentifier = .NETCoreApp +build_property.TargetFrameworkVersion = v10.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = Generic.CL +build_property.ProjectDir = /mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.EffectiveAnalysisLevelStyle = 10.0 +build_property.EnableCodeStyleSeverity = diff --git a/obj/Debug/net10.0/Generic.CL.GlobalUsings.g.cs b/obj/Debug/net10.0/Generic.CL.GlobalUsings.g.cs new file mode 100644 index 0000000..d12bcbc --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using System; +global using System.Collections.Generic; +global using System.IO; +global using System.Linq; +global using System.Net.Http; +global using System.Threading; +global using System.Threading.Tasks; diff --git a/obj/Debug/net10.0/Generic.CL.assets.cache b/obj/Debug/net10.0/Generic.CL.assets.cache new file mode 100644 index 0000000..caaa382 Binary files /dev/null and b/obj/Debug/net10.0/Generic.CL.assets.cache differ diff --git a/obj/Debug/net10.0/Generic.CL.csproj.CoreCompileInputs.cache b/obj/Debug/net10.0/Generic.CL.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..a8fdb31 --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +fe21f49b2589519ae2475c649a675b25db15173a3baa39e5df96b3c0de73c230 diff --git a/obj/Debug/net10.0/Generic.CL.csproj.FileListAbsolute.txt b/obj/Debug/net10.0/Generic.CL.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..2e64290 --- /dev/null +++ b/obj/Debug/net10.0/Generic.CL.csproj.FileListAbsolute.txt @@ -0,0 +1,11 @@ +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.CL.deps.json +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.CL.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.CL.pdb +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.GeneratedMSBuildEditorConfig.editorconfig +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.AssemblyInfoInputs.cache +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.AssemblyInfo.cs +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.csproj.CoreCompileInputs.cache +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/refint/Generic.CL.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.CL.pdb +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/ref/Generic.CL.dll diff --git a/obj/Debug/net10.0/Generic.CL.dll b/obj/Debug/net10.0/Generic.CL.dll new file mode 100644 index 0000000..3098fae Binary files /dev/null and b/obj/Debug/net10.0/Generic.CL.dll differ diff --git a/obj/Debug/net10.0/Generic.CL.pdb b/obj/Debug/net10.0/Generic.CL.pdb new file mode 100644 index 0000000..ddfb4b2 Binary files /dev/null and b/obj/Debug/net10.0/Generic.CL.pdb differ diff --git a/obj/Debug/net10.0/Generic.GeneratedMSBuildEditorConfig.editorconfig b/obj/Debug/net10.0/Generic.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..9be695a --- /dev/null +++ b/obj/Debug/net10.0/Generic.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,17 @@ +is_global = true +build_property.TargetFramework = net10.0 +build_property.TargetFrameworkIdentifier = .NETCoreApp +build_property.TargetFrameworkVersion = v10.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = Generic +build_property.ProjectDir = /mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.EffectiveAnalysisLevelStyle = 10.0 +build_property.EnableCodeStyleSeverity = diff --git a/obj/Debug/net10.0/Generic.GlobalUsings.g.cs b/obj/Debug/net10.0/Generic.GlobalUsings.g.cs new file mode 100644 index 0000000..d12bcbc --- /dev/null +++ b/obj/Debug/net10.0/Generic.GlobalUsings.g.cs @@ -0,0 +1,8 @@ +// +global using System; +global using System.Collections.Generic; +global using System.IO; +global using System.Linq; +global using System.Net.Http; +global using System.Threading; +global using System.Threading.Tasks; diff --git a/obj/Debug/net10.0/Generic.assets.cache b/obj/Debug/net10.0/Generic.assets.cache new file mode 100644 index 0000000..cd242a8 Binary files /dev/null and b/obj/Debug/net10.0/Generic.assets.cache differ diff --git a/obj/Debug/net10.0/Generic.csproj.CoreCompileInputs.cache b/obj/Debug/net10.0/Generic.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..7a5a87a --- /dev/null +++ b/obj/Debug/net10.0/Generic.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +d13176499425e80ccca64955d736635989ae9dd80d2597f8e5a10fd0d6faa58f diff --git a/obj/Debug/net10.0/Generic.csproj.FileListAbsolute.txt b/obj/Debug/net10.0/Generic.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..5518e42 --- /dev/null +++ b/obj/Debug/net10.0/Generic.csproj.FileListAbsolute.txt @@ -0,0 +1,11 @@ +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.deps.json +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/bin/Debug/net10.0/Generic.pdb +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.GeneratedMSBuildEditorConfig.editorconfig +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.AssemblyInfoInputs.cache +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.AssemblyInfo.cs +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.csproj.CoreCompileInputs.cache +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/refint/Generic.dll +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/Generic.pdb +/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/Debug/net10.0/ref/Generic.dll diff --git a/obj/Debug/net10.0/Generic.dll b/obj/Debug/net10.0/Generic.dll new file mode 100644 index 0000000..6074666 Binary files /dev/null and b/obj/Debug/net10.0/Generic.dll differ diff --git a/obj/Debug/net10.0/Generic.pdb b/obj/Debug/net10.0/Generic.pdb new file mode 100644 index 0000000..dea9f46 Binary files /dev/null and b/obj/Debug/net10.0/Generic.pdb differ diff --git a/obj/Debug/net10.0/ref/Generic.CL.dll b/obj/Debug/net10.0/ref/Generic.CL.dll new file mode 100644 index 0000000..0c5a6ec Binary files /dev/null and b/obj/Debug/net10.0/ref/Generic.CL.dll differ diff --git a/obj/Debug/net10.0/ref/Generic.dll b/obj/Debug/net10.0/ref/Generic.dll new file mode 100644 index 0000000..a8cfb6d Binary files /dev/null and b/obj/Debug/net10.0/ref/Generic.dll differ diff --git a/obj/Debug/net10.0/refint/Generic.CL.dll b/obj/Debug/net10.0/refint/Generic.CL.dll new file mode 100644 index 0000000..0c5a6ec Binary files /dev/null and b/obj/Debug/net10.0/refint/Generic.CL.dll differ diff --git a/obj/Debug/net10.0/refint/Generic.dll b/obj/Debug/net10.0/refint/Generic.dll new file mode 100644 index 0000000..a8cfb6d Binary files /dev/null and b/obj/Debug/net10.0/refint/Generic.dll differ diff --git a/obj/Generic.CL.csproj.nuget.dgspec.json b/obj/Generic.CL.csproj.nuget.dgspec.json new file mode 100644 index 0000000..86f2b04 --- /dev/null +++ b/obj/Generic.CL.csproj.nuget.dgspec.json @@ -0,0 +1,341 @@ +{ + "format": 1, + "restore": { + "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj": {} + }, + "projects": { + "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj", + "projectName": "Generic.CL", + "projectPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj", + "packagesPath": "/home/yla/.nuget/packages/", + "outputPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/", + "projectStyle": "PackageReference", + "configFilePaths": [ + "/home/yla/.nuget/NuGet/NuGet.Config" + ], + "originalTargetFrameworks": [ + "net10.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "all" + }, + "SdkAnalysisLevel": "10.0.100" + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/10.0.102/PortableRuntimeIdentifierGraph.json", + "packagesToPrune": { + "Microsoft.CSharp": "(,4.7.32767]", + "Microsoft.VisualBasic": "(,10.4.32767]", + "Microsoft.Win32.Primitives": "(,4.3.32767]", + "Microsoft.Win32.Registry": "(,5.0.32767]", + "runtime.any.System.Collections": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.any.System.Globalization": "(,4.3.32767]", + "runtime.any.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.any.System.IO": "(,4.3.32767]", + "runtime.any.System.Reflection": "(,4.3.32767]", + "runtime.any.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.any.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.any.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.any.System.Runtime": "(,4.3.32767]", + "runtime.any.System.Runtime.Handles": "(,4.3.32767]", + "runtime.any.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.any.System.Text.Encoding": "(,4.3.32767]", + "runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.any.System.Threading.Tasks": "(,4.3.32767]", + "runtime.any.System.Threading.Timer": "(,4.3.32767]", + "runtime.aot.System.Collections": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.aot.System.Globalization": "(,4.3.32767]", + "runtime.aot.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.aot.System.IO": "(,4.3.32767]", + "runtime.aot.System.Reflection": "(,4.3.32767]", + "runtime.aot.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.aot.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.aot.System.Runtime": "(,4.3.32767]", + "runtime.aot.System.Runtime.Handles": "(,4.3.32767]", + "runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.aot.System.Threading.Tasks": "(,4.3.32767]", + "runtime.aot.System.Threading.Timer": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.unix.System.Console": "(,4.3.32767]", + "runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.unix.System.IO.FileSystem": "(,4.3.32767]", + "runtime.unix.System.Net.Primitives": "(,4.3.32767]", + "runtime.unix.System.Net.Sockets": "(,4.3.32767]", + "runtime.unix.System.Private.Uri": "(,4.3.32767]", + "runtime.unix.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.win.System.Console": "(,4.3.32767]", + "runtime.win.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.win.System.IO.FileSystem": "(,4.3.32767]", + "runtime.win.System.Net.Primitives": "(,4.3.32767]", + "runtime.win.System.Net.Sockets": "(,4.3.32767]", + "runtime.win.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7.System.Private.Uri": "(,4.3.32767]", + "runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]", + "System.AppContext": "(,4.3.32767]", + "System.Buffers": "(,5.0.32767]", + "System.Collections": "(,4.3.32767]", + "System.Collections.Concurrent": "(,4.3.32767]", + "System.Collections.Immutable": "(,10.0.32767]", + "System.Collections.NonGeneric": "(,4.3.32767]", + "System.Collections.Specialized": "(,4.3.32767]", + "System.ComponentModel": "(,4.3.32767]", + "System.ComponentModel.Annotations": "(,4.3.32767]", + "System.ComponentModel.EventBasedAsync": "(,4.3.32767]", + "System.ComponentModel.Primitives": "(,4.3.32767]", + "System.ComponentModel.TypeConverter": "(,4.3.32767]", + "System.Console": "(,4.3.32767]", + "System.Data.Common": "(,4.3.32767]", + "System.Data.DataSetExtensions": "(,4.4.32767]", + "System.Diagnostics.Contracts": "(,4.3.32767]", + "System.Diagnostics.Debug": "(,4.3.32767]", + "System.Diagnostics.DiagnosticSource": "(,10.0.32767]", + "System.Diagnostics.FileVersionInfo": "(,4.3.32767]", + "System.Diagnostics.Process": "(,4.3.32767]", + "System.Diagnostics.StackTrace": "(,4.3.32767]", + "System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]", + "System.Diagnostics.Tools": "(,4.3.32767]", + "System.Diagnostics.TraceSource": "(,4.3.32767]", + "System.Diagnostics.Tracing": "(,4.3.32767]", + "System.Drawing.Primitives": "(,4.3.32767]", + "System.Dynamic.Runtime": "(,4.3.32767]", + "System.Formats.Asn1": "(,10.0.32767]", + "System.Formats.Tar": "(,10.0.32767]", + "System.Globalization": "(,4.3.32767]", + "System.Globalization.Calendars": "(,4.3.32767]", + "System.Globalization.Extensions": "(,4.3.32767]", + "System.IO": "(,4.3.32767]", + "System.IO.Compression": "(,4.3.32767]", + "System.IO.Compression.ZipFile": "(,4.3.32767]", + "System.IO.FileSystem": "(,4.3.32767]", + "System.IO.FileSystem.AccessControl": "(,4.4.32767]", + "System.IO.FileSystem.DriveInfo": "(,4.3.32767]", + "System.IO.FileSystem.Primitives": "(,4.3.32767]", + "System.IO.FileSystem.Watcher": "(,4.3.32767]", + "System.IO.IsolatedStorage": "(,4.3.32767]", + "System.IO.MemoryMappedFiles": "(,4.3.32767]", + "System.IO.Pipelines": "(,10.0.32767]", + "System.IO.Pipes": "(,4.3.32767]", + "System.IO.Pipes.AccessControl": "(,5.0.32767]", + "System.IO.UnmanagedMemoryStream": "(,4.3.32767]", + "System.Linq": "(,4.3.32767]", + "System.Linq.AsyncEnumerable": "(,10.0.32767]", + "System.Linq.Expressions": "(,4.3.32767]", + "System.Linq.Parallel": "(,4.3.32767]", + "System.Linq.Queryable": "(,4.3.32767]", + "System.Memory": "(,5.0.32767]", + "System.Net.Http": "(,4.3.32767]", + "System.Net.Http.Json": "(,10.0.32767]", + "System.Net.NameResolution": "(,4.3.32767]", + "System.Net.NetworkInformation": "(,4.3.32767]", + "System.Net.Ping": "(,4.3.32767]", + "System.Net.Primitives": "(,4.3.32767]", + "System.Net.Requests": "(,4.3.32767]", + "System.Net.Security": "(,4.3.32767]", + "System.Net.ServerSentEvents": "(,10.0.32767]", + "System.Net.Sockets": "(,4.3.32767]", + "System.Net.WebHeaderCollection": "(,4.3.32767]", + "System.Net.WebSockets": "(,4.3.32767]", + "System.Net.WebSockets.Client": "(,4.3.32767]", + "System.Numerics.Vectors": "(,5.0.32767]", + "System.ObjectModel": "(,4.3.32767]", + "System.Private.DataContractSerialization": "(,4.3.32767]", + "System.Private.Uri": "(,4.3.32767]", + "System.Reflection": "(,4.3.32767]", + "System.Reflection.DispatchProxy": "(,6.0.32767]", + "System.Reflection.Emit": "(,4.7.32767]", + "System.Reflection.Emit.ILGeneration": "(,4.7.32767]", + "System.Reflection.Emit.Lightweight": "(,4.7.32767]", + "System.Reflection.Extensions": "(,4.3.32767]", + "System.Reflection.Metadata": "(,10.0.32767]", + "System.Reflection.Primitives": "(,4.3.32767]", + "System.Reflection.TypeExtensions": "(,4.3.32767]", + "System.Resources.Reader": "(,4.3.32767]", + "System.Resources.ResourceManager": "(,4.3.32767]", + "System.Resources.Writer": "(,4.3.32767]", + "System.Runtime": "(,4.3.32767]", + "System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]", + "System.Runtime.CompilerServices.VisualC": "(,4.3.32767]", + "System.Runtime.Extensions": "(,4.3.32767]", + "System.Runtime.Handles": "(,4.3.32767]", + "System.Runtime.InteropServices": "(,4.3.32767]", + "System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]", + "System.Runtime.Loader": "(,4.3.32767]", + "System.Runtime.Numerics": "(,4.3.32767]", + "System.Runtime.Serialization.Formatters": "(,4.3.32767]", + "System.Runtime.Serialization.Json": "(,4.3.32767]", + "System.Runtime.Serialization.Primitives": "(,4.3.32767]", + "System.Runtime.Serialization.Xml": "(,4.3.32767]", + "System.Security.AccessControl": "(,6.0.32767]", + "System.Security.Claims": "(,4.3.32767]", + "System.Security.Cryptography.Algorithms": "(,4.3.32767]", + "System.Security.Cryptography.Cng": "(,5.0.32767]", + "System.Security.Cryptography.Csp": "(,4.3.32767]", + "System.Security.Cryptography.Encoding": "(,4.3.32767]", + "System.Security.Cryptography.OpenSsl": "(,5.0.32767]", + "System.Security.Cryptography.Primitives": "(,4.3.32767]", + "System.Security.Cryptography.X509Certificates": "(,4.3.32767]", + "System.Security.Principal": "(,4.3.32767]", + "System.Security.Principal.Windows": "(,5.0.32767]", + "System.Security.SecureString": "(,4.3.32767]", + "System.Text.Encoding": "(,4.3.32767]", + "System.Text.Encoding.CodePages": "(,10.0.32767]", + "System.Text.Encoding.Extensions": "(,4.3.32767]", + "System.Text.Encodings.Web": "(,10.0.32767]", + "System.Text.Json": "(,10.0.32767]", + "System.Text.RegularExpressions": "(,4.3.32767]", + "System.Threading": "(,4.3.32767]", + "System.Threading.AccessControl": "(,10.0.32767]", + "System.Threading.Channels": "(,10.0.32767]", + "System.Threading.Overlapped": "(,4.3.32767]", + "System.Threading.Tasks": "(,4.3.32767]", + "System.Threading.Tasks.Dataflow": "(,10.0.32767]", + "System.Threading.Tasks.Extensions": "(,5.0.32767]", + "System.Threading.Tasks.Parallel": "(,4.3.32767]", + "System.Threading.Thread": "(,4.3.32767]", + "System.Threading.ThreadPool": "(,4.3.32767]", + "System.Threading.Timer": "(,4.3.32767]", + "System.ValueTuple": "(,4.5.32767]", + "System.Xml.ReaderWriter": "(,4.3.32767]", + "System.Xml.XDocument": "(,4.3.32767]", + "System.Xml.XmlDocument": "(,4.3.32767]", + "System.Xml.XmlSerializer": "(,4.3.32767]", + "System.Xml.XPath": "(,4.3.32767]", + "System.Xml.XPath.XDocument": "(,5.0.32767]" + } + } + } + } + } +} \ No newline at end of file diff --git a/obj/Generic.CL.csproj.nuget.g.props b/obj/Generic.CL.csproj.nuget.g.props new file mode 100644 index 0000000..ac65a2f --- /dev/null +++ b/obj/Generic.CL.csproj.nuget.g.props @@ -0,0 +1,15 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + /home/yla/.nuget/packages/ + /home/yla/.nuget/packages/ + PackageReference + 7.0.0 + + + + + \ No newline at end of file diff --git a/obj/Generic.CL.csproj.nuget.g.targets b/obj/Generic.CL.csproj.nuget.g.targets new file mode 100644 index 0000000..3dc06ef --- /dev/null +++ b/obj/Generic.CL.csproj.nuget.g.targets @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/obj/Generic.csproj.nuget.dgspec.json b/obj/Generic.csproj.nuget.dgspec.json new file mode 100644 index 0000000..44455af --- /dev/null +++ b/obj/Generic.csproj.nuget.dgspec.json @@ -0,0 +1,341 @@ +{ + "format": 1, + "restore": { + "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.csproj": {} + }, + "projects": { + "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.csproj", + "projectName": "Generic", + "projectPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.csproj", + "packagesPath": "/home/yla/.nuget/packages/", + "outputPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/", + "projectStyle": "PackageReference", + "configFilePaths": [ + "/home/yla/.nuget/NuGet/NuGet.Config" + ], + "originalTargetFrameworks": [ + "net10.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "all" + }, + "SdkAnalysisLevel": "10.0.100" + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/10.0.102/PortableRuntimeIdentifierGraph.json", + "packagesToPrune": { + "Microsoft.CSharp": "(,4.7.32767]", + "Microsoft.VisualBasic": "(,10.4.32767]", + "Microsoft.Win32.Primitives": "(,4.3.32767]", + "Microsoft.Win32.Registry": "(,5.0.32767]", + "runtime.any.System.Collections": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.any.System.Globalization": "(,4.3.32767]", + "runtime.any.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.any.System.IO": "(,4.3.32767]", + "runtime.any.System.Reflection": "(,4.3.32767]", + "runtime.any.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.any.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.any.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.any.System.Runtime": "(,4.3.32767]", + "runtime.any.System.Runtime.Handles": "(,4.3.32767]", + "runtime.any.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.any.System.Text.Encoding": "(,4.3.32767]", + "runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.any.System.Threading.Tasks": "(,4.3.32767]", + "runtime.any.System.Threading.Timer": "(,4.3.32767]", + "runtime.aot.System.Collections": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.aot.System.Globalization": "(,4.3.32767]", + "runtime.aot.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.aot.System.IO": "(,4.3.32767]", + "runtime.aot.System.Reflection": "(,4.3.32767]", + "runtime.aot.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.aot.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.aot.System.Runtime": "(,4.3.32767]", + "runtime.aot.System.Runtime.Handles": "(,4.3.32767]", + "runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.aot.System.Threading.Tasks": "(,4.3.32767]", + "runtime.aot.System.Threading.Timer": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.unix.System.Console": "(,4.3.32767]", + "runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.unix.System.IO.FileSystem": "(,4.3.32767]", + "runtime.unix.System.Net.Primitives": "(,4.3.32767]", + "runtime.unix.System.Net.Sockets": "(,4.3.32767]", + "runtime.unix.System.Private.Uri": "(,4.3.32767]", + "runtime.unix.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.win.System.Console": "(,4.3.32767]", + "runtime.win.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.win.System.IO.FileSystem": "(,4.3.32767]", + "runtime.win.System.Net.Primitives": "(,4.3.32767]", + "runtime.win.System.Net.Sockets": "(,4.3.32767]", + "runtime.win.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7.System.Private.Uri": "(,4.3.32767]", + "runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]", + "System.AppContext": "(,4.3.32767]", + "System.Buffers": "(,5.0.32767]", + "System.Collections": "(,4.3.32767]", + "System.Collections.Concurrent": "(,4.3.32767]", + "System.Collections.Immutable": "(,10.0.32767]", + "System.Collections.NonGeneric": "(,4.3.32767]", + "System.Collections.Specialized": "(,4.3.32767]", + "System.ComponentModel": "(,4.3.32767]", + "System.ComponentModel.Annotations": "(,4.3.32767]", + "System.ComponentModel.EventBasedAsync": "(,4.3.32767]", + "System.ComponentModel.Primitives": "(,4.3.32767]", + "System.ComponentModel.TypeConverter": "(,4.3.32767]", + "System.Console": "(,4.3.32767]", + "System.Data.Common": "(,4.3.32767]", + "System.Data.DataSetExtensions": "(,4.4.32767]", + "System.Diagnostics.Contracts": "(,4.3.32767]", + "System.Diagnostics.Debug": "(,4.3.32767]", + "System.Diagnostics.DiagnosticSource": "(,10.0.32767]", + "System.Diagnostics.FileVersionInfo": "(,4.3.32767]", + "System.Diagnostics.Process": "(,4.3.32767]", + "System.Diagnostics.StackTrace": "(,4.3.32767]", + "System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]", + "System.Diagnostics.Tools": "(,4.3.32767]", + "System.Diagnostics.TraceSource": "(,4.3.32767]", + "System.Diagnostics.Tracing": "(,4.3.32767]", + "System.Drawing.Primitives": "(,4.3.32767]", + "System.Dynamic.Runtime": "(,4.3.32767]", + "System.Formats.Asn1": "(,10.0.32767]", + "System.Formats.Tar": "(,10.0.32767]", + "System.Globalization": "(,4.3.32767]", + "System.Globalization.Calendars": "(,4.3.32767]", + "System.Globalization.Extensions": "(,4.3.32767]", + "System.IO": "(,4.3.32767]", + "System.IO.Compression": "(,4.3.32767]", + "System.IO.Compression.ZipFile": "(,4.3.32767]", + "System.IO.FileSystem": "(,4.3.32767]", + "System.IO.FileSystem.AccessControl": "(,4.4.32767]", + "System.IO.FileSystem.DriveInfo": "(,4.3.32767]", + "System.IO.FileSystem.Primitives": "(,4.3.32767]", + "System.IO.FileSystem.Watcher": "(,4.3.32767]", + "System.IO.IsolatedStorage": "(,4.3.32767]", + "System.IO.MemoryMappedFiles": "(,4.3.32767]", + "System.IO.Pipelines": "(,10.0.32767]", + "System.IO.Pipes": "(,4.3.32767]", + "System.IO.Pipes.AccessControl": "(,5.0.32767]", + "System.IO.UnmanagedMemoryStream": "(,4.3.32767]", + "System.Linq": "(,4.3.32767]", + "System.Linq.AsyncEnumerable": "(,10.0.32767]", + "System.Linq.Expressions": "(,4.3.32767]", + "System.Linq.Parallel": "(,4.3.32767]", + "System.Linq.Queryable": "(,4.3.32767]", + "System.Memory": "(,5.0.32767]", + "System.Net.Http": "(,4.3.32767]", + "System.Net.Http.Json": "(,10.0.32767]", + "System.Net.NameResolution": "(,4.3.32767]", + "System.Net.NetworkInformation": "(,4.3.32767]", + "System.Net.Ping": "(,4.3.32767]", + "System.Net.Primitives": "(,4.3.32767]", + "System.Net.Requests": "(,4.3.32767]", + "System.Net.Security": "(,4.3.32767]", + "System.Net.ServerSentEvents": "(,10.0.32767]", + "System.Net.Sockets": "(,4.3.32767]", + "System.Net.WebHeaderCollection": "(,4.3.32767]", + "System.Net.WebSockets": "(,4.3.32767]", + "System.Net.WebSockets.Client": "(,4.3.32767]", + "System.Numerics.Vectors": "(,5.0.32767]", + "System.ObjectModel": "(,4.3.32767]", + "System.Private.DataContractSerialization": "(,4.3.32767]", + "System.Private.Uri": "(,4.3.32767]", + "System.Reflection": "(,4.3.32767]", + "System.Reflection.DispatchProxy": "(,6.0.32767]", + "System.Reflection.Emit": "(,4.7.32767]", + "System.Reflection.Emit.ILGeneration": "(,4.7.32767]", + "System.Reflection.Emit.Lightweight": "(,4.7.32767]", + "System.Reflection.Extensions": "(,4.3.32767]", + "System.Reflection.Metadata": "(,10.0.32767]", + "System.Reflection.Primitives": "(,4.3.32767]", + "System.Reflection.TypeExtensions": "(,4.3.32767]", + "System.Resources.Reader": "(,4.3.32767]", + "System.Resources.ResourceManager": "(,4.3.32767]", + "System.Resources.Writer": "(,4.3.32767]", + "System.Runtime": "(,4.3.32767]", + "System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]", + "System.Runtime.CompilerServices.VisualC": "(,4.3.32767]", + "System.Runtime.Extensions": "(,4.3.32767]", + "System.Runtime.Handles": "(,4.3.32767]", + "System.Runtime.InteropServices": "(,4.3.32767]", + "System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]", + "System.Runtime.Loader": "(,4.3.32767]", + "System.Runtime.Numerics": "(,4.3.32767]", + "System.Runtime.Serialization.Formatters": "(,4.3.32767]", + "System.Runtime.Serialization.Json": "(,4.3.32767]", + "System.Runtime.Serialization.Primitives": "(,4.3.32767]", + "System.Runtime.Serialization.Xml": "(,4.3.32767]", + "System.Security.AccessControl": "(,6.0.32767]", + "System.Security.Claims": "(,4.3.32767]", + "System.Security.Cryptography.Algorithms": "(,4.3.32767]", + "System.Security.Cryptography.Cng": "(,5.0.32767]", + "System.Security.Cryptography.Csp": "(,4.3.32767]", + "System.Security.Cryptography.Encoding": "(,4.3.32767]", + "System.Security.Cryptography.OpenSsl": "(,5.0.32767]", + "System.Security.Cryptography.Primitives": "(,4.3.32767]", + "System.Security.Cryptography.X509Certificates": "(,4.3.32767]", + "System.Security.Principal": "(,4.3.32767]", + "System.Security.Principal.Windows": "(,5.0.32767]", + "System.Security.SecureString": "(,4.3.32767]", + "System.Text.Encoding": "(,4.3.32767]", + "System.Text.Encoding.CodePages": "(,10.0.32767]", + "System.Text.Encoding.Extensions": "(,4.3.32767]", + "System.Text.Encodings.Web": "(,10.0.32767]", + "System.Text.Json": "(,10.0.32767]", + "System.Text.RegularExpressions": "(,4.3.32767]", + "System.Threading": "(,4.3.32767]", + "System.Threading.AccessControl": "(,10.0.32767]", + "System.Threading.Channels": "(,10.0.32767]", + "System.Threading.Overlapped": "(,4.3.32767]", + "System.Threading.Tasks": "(,4.3.32767]", + "System.Threading.Tasks.Dataflow": "(,10.0.32767]", + "System.Threading.Tasks.Extensions": "(,5.0.32767]", + "System.Threading.Tasks.Parallel": "(,4.3.32767]", + "System.Threading.Thread": "(,4.3.32767]", + "System.Threading.ThreadPool": "(,4.3.32767]", + "System.Threading.Timer": "(,4.3.32767]", + "System.ValueTuple": "(,4.5.32767]", + "System.Xml.ReaderWriter": "(,4.3.32767]", + "System.Xml.XDocument": "(,4.3.32767]", + "System.Xml.XmlDocument": "(,4.3.32767]", + "System.Xml.XmlSerializer": "(,4.3.32767]", + "System.Xml.XPath": "(,4.3.32767]", + "System.Xml.XPath.XDocument": "(,5.0.32767]" + } + } + } + } + } +} \ No newline at end of file diff --git a/obj/Generic.csproj.nuget.g.props b/obj/Generic.csproj.nuget.g.props new file mode 100644 index 0000000..ac65a2f --- /dev/null +++ b/obj/Generic.csproj.nuget.g.props @@ -0,0 +1,15 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + /home/yla/.nuget/packages/ + /home/yla/.nuget/packages/ + PackageReference + 7.0.0 + + + + + \ No newline at end of file diff --git a/obj/Generic.csproj.nuget.g.targets b/obj/Generic.csproj.nuget.g.targets new file mode 100644 index 0000000..3dc06ef --- /dev/null +++ b/obj/Generic.csproj.nuget.g.targets @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/obj/project.assets.json b/obj/project.assets.json new file mode 100644 index 0000000..25c3ab8 --- /dev/null +++ b/obj/project.assets.json @@ -0,0 +1,346 @@ +{ + "version": 3, + "targets": { + "net10.0": {} + }, + "libraries": {}, + "projectFileDependencyGroups": { + "net10.0": [] + }, + "packageFolders": { + "/home/yla/.nuget/packages/": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj", + "projectName": "Generic.CL", + "projectPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj", + "packagesPath": "/home/yla/.nuget/packages/", + "outputPath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/obj/", + "projectStyle": "PackageReference", + "configFilePaths": [ + "/home/yla/.nuget/NuGet/NuGet.Config" + ], + "originalTargetFrameworks": [ + "net10.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "all" + }, + "SdkAnalysisLevel": "10.0.100" + }, + "frameworks": { + "net10.0": { + "targetAlias": "net10.0", + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/10.0.102/PortableRuntimeIdentifierGraph.json", + "packagesToPrune": { + "Microsoft.CSharp": "(,4.7.32767]", + "Microsoft.VisualBasic": "(,10.4.32767]", + "Microsoft.Win32.Primitives": "(,4.3.32767]", + "Microsoft.Win32.Registry": "(,5.0.32767]", + "runtime.any.System.Collections": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.any.System.Globalization": "(,4.3.32767]", + "runtime.any.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.any.System.IO": "(,4.3.32767]", + "runtime.any.System.Reflection": "(,4.3.32767]", + "runtime.any.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.any.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.any.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.any.System.Runtime": "(,4.3.32767]", + "runtime.any.System.Runtime.Handles": "(,4.3.32767]", + "runtime.any.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.any.System.Text.Encoding": "(,4.3.32767]", + "runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.any.System.Threading.Tasks": "(,4.3.32767]", + "runtime.any.System.Threading.Timer": "(,4.3.32767]", + "runtime.aot.System.Collections": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]", + "runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]", + "runtime.aot.System.Globalization": "(,4.3.32767]", + "runtime.aot.System.Globalization.Calendars": "(,4.3.32767]", + "runtime.aot.System.IO": "(,4.3.32767]", + "runtime.aot.System.Reflection": "(,4.3.32767]", + "runtime.aot.System.Reflection.Extensions": "(,4.3.32767]", + "runtime.aot.System.Reflection.Primitives": "(,4.3.32767]", + "runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]", + "runtime.aot.System.Runtime": "(,4.3.32767]", + "runtime.aot.System.Runtime.Handles": "(,4.3.32767]", + "runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding": "(,4.3.32767]", + "runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]", + "runtime.aot.System.Threading.Tasks": "(,4.3.32767]", + "runtime.aot.System.Threading.Timer": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]", + "runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]", + "runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.unix.System.Console": "(,4.3.32767]", + "runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.unix.System.IO.FileSystem": "(,4.3.32767]", + "runtime.unix.System.Net.Primitives": "(,4.3.32767]", + "runtime.unix.System.Net.Sockets": "(,4.3.32767]", + "runtime.unix.System.Private.Uri": "(,4.3.32767]", + "runtime.unix.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]", + "runtime.win.System.Console": "(,4.3.32767]", + "runtime.win.System.Diagnostics.Debug": "(,4.3.32767]", + "runtime.win.System.IO.FileSystem": "(,4.3.32767]", + "runtime.win.System.Net.Primitives": "(,4.3.32767]", + "runtime.win.System.Net.Sockets": "(,4.3.32767]", + "runtime.win.System.Runtime.Extensions": "(,4.3.32767]", + "runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]", + "runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]", + "runtime.win7.System.Private.Uri": "(,4.3.32767]", + "runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]", + "System.AppContext": "(,4.3.32767]", + "System.Buffers": "(,5.0.32767]", + "System.Collections": "(,4.3.32767]", + "System.Collections.Concurrent": "(,4.3.32767]", + "System.Collections.Immutable": "(,10.0.32767]", + "System.Collections.NonGeneric": "(,4.3.32767]", + "System.Collections.Specialized": "(,4.3.32767]", + "System.ComponentModel": "(,4.3.32767]", + "System.ComponentModel.Annotations": "(,4.3.32767]", + "System.ComponentModel.EventBasedAsync": "(,4.3.32767]", + "System.ComponentModel.Primitives": "(,4.3.32767]", + "System.ComponentModel.TypeConverter": "(,4.3.32767]", + "System.Console": "(,4.3.32767]", + "System.Data.Common": "(,4.3.32767]", + "System.Data.DataSetExtensions": "(,4.4.32767]", + "System.Diagnostics.Contracts": "(,4.3.32767]", + "System.Diagnostics.Debug": "(,4.3.32767]", + "System.Diagnostics.DiagnosticSource": "(,10.0.32767]", + "System.Diagnostics.FileVersionInfo": "(,4.3.32767]", + "System.Diagnostics.Process": "(,4.3.32767]", + "System.Diagnostics.StackTrace": "(,4.3.32767]", + "System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]", + "System.Diagnostics.Tools": "(,4.3.32767]", + "System.Diagnostics.TraceSource": "(,4.3.32767]", + "System.Diagnostics.Tracing": "(,4.3.32767]", + "System.Drawing.Primitives": "(,4.3.32767]", + "System.Dynamic.Runtime": "(,4.3.32767]", + "System.Formats.Asn1": "(,10.0.32767]", + "System.Formats.Tar": "(,10.0.32767]", + "System.Globalization": "(,4.3.32767]", + "System.Globalization.Calendars": "(,4.3.32767]", + "System.Globalization.Extensions": "(,4.3.32767]", + "System.IO": "(,4.3.32767]", + "System.IO.Compression": "(,4.3.32767]", + "System.IO.Compression.ZipFile": "(,4.3.32767]", + "System.IO.FileSystem": "(,4.3.32767]", + "System.IO.FileSystem.AccessControl": "(,4.4.32767]", + "System.IO.FileSystem.DriveInfo": "(,4.3.32767]", + "System.IO.FileSystem.Primitives": "(,4.3.32767]", + "System.IO.FileSystem.Watcher": "(,4.3.32767]", + "System.IO.IsolatedStorage": "(,4.3.32767]", + "System.IO.MemoryMappedFiles": "(,4.3.32767]", + "System.IO.Pipelines": "(,10.0.32767]", + "System.IO.Pipes": "(,4.3.32767]", + "System.IO.Pipes.AccessControl": "(,5.0.32767]", + "System.IO.UnmanagedMemoryStream": "(,4.3.32767]", + "System.Linq": "(,4.3.32767]", + "System.Linq.AsyncEnumerable": "(,10.0.32767]", + "System.Linq.Expressions": "(,4.3.32767]", + "System.Linq.Parallel": "(,4.3.32767]", + "System.Linq.Queryable": "(,4.3.32767]", + "System.Memory": "(,5.0.32767]", + "System.Net.Http": "(,4.3.32767]", + "System.Net.Http.Json": "(,10.0.32767]", + "System.Net.NameResolution": "(,4.3.32767]", + "System.Net.NetworkInformation": "(,4.3.32767]", + "System.Net.Ping": "(,4.3.32767]", + "System.Net.Primitives": "(,4.3.32767]", + "System.Net.Requests": "(,4.3.32767]", + "System.Net.Security": "(,4.3.32767]", + "System.Net.ServerSentEvents": "(,10.0.32767]", + "System.Net.Sockets": "(,4.3.32767]", + "System.Net.WebHeaderCollection": "(,4.3.32767]", + "System.Net.WebSockets": "(,4.3.32767]", + "System.Net.WebSockets.Client": "(,4.3.32767]", + "System.Numerics.Vectors": "(,5.0.32767]", + "System.ObjectModel": "(,4.3.32767]", + "System.Private.DataContractSerialization": "(,4.3.32767]", + "System.Private.Uri": "(,4.3.32767]", + "System.Reflection": "(,4.3.32767]", + "System.Reflection.DispatchProxy": "(,6.0.32767]", + "System.Reflection.Emit": "(,4.7.32767]", + "System.Reflection.Emit.ILGeneration": "(,4.7.32767]", + "System.Reflection.Emit.Lightweight": "(,4.7.32767]", + "System.Reflection.Extensions": "(,4.3.32767]", + "System.Reflection.Metadata": "(,10.0.32767]", + "System.Reflection.Primitives": "(,4.3.32767]", + "System.Reflection.TypeExtensions": "(,4.3.32767]", + "System.Resources.Reader": "(,4.3.32767]", + "System.Resources.ResourceManager": "(,4.3.32767]", + "System.Resources.Writer": "(,4.3.32767]", + "System.Runtime": "(,4.3.32767]", + "System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]", + "System.Runtime.CompilerServices.VisualC": "(,4.3.32767]", + "System.Runtime.Extensions": "(,4.3.32767]", + "System.Runtime.Handles": "(,4.3.32767]", + "System.Runtime.InteropServices": "(,4.3.32767]", + "System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]", + "System.Runtime.Loader": "(,4.3.32767]", + "System.Runtime.Numerics": "(,4.3.32767]", + "System.Runtime.Serialization.Formatters": "(,4.3.32767]", + "System.Runtime.Serialization.Json": "(,4.3.32767]", + "System.Runtime.Serialization.Primitives": "(,4.3.32767]", + "System.Runtime.Serialization.Xml": "(,4.3.32767]", + "System.Security.AccessControl": "(,6.0.32767]", + "System.Security.Claims": "(,4.3.32767]", + "System.Security.Cryptography.Algorithms": "(,4.3.32767]", + "System.Security.Cryptography.Cng": "(,5.0.32767]", + "System.Security.Cryptography.Csp": "(,4.3.32767]", + "System.Security.Cryptography.Encoding": "(,4.3.32767]", + "System.Security.Cryptography.OpenSsl": "(,5.0.32767]", + "System.Security.Cryptography.Primitives": "(,4.3.32767]", + "System.Security.Cryptography.X509Certificates": "(,4.3.32767]", + "System.Security.Principal": "(,4.3.32767]", + "System.Security.Principal.Windows": "(,5.0.32767]", + "System.Security.SecureString": "(,4.3.32767]", + "System.Text.Encoding": "(,4.3.32767]", + "System.Text.Encoding.CodePages": "(,10.0.32767]", + "System.Text.Encoding.Extensions": "(,4.3.32767]", + "System.Text.Encodings.Web": "(,10.0.32767]", + "System.Text.Json": "(,10.0.32767]", + "System.Text.RegularExpressions": "(,4.3.32767]", + "System.Threading": "(,4.3.32767]", + "System.Threading.AccessControl": "(,10.0.32767]", + "System.Threading.Channels": "(,10.0.32767]", + "System.Threading.Overlapped": "(,4.3.32767]", + "System.Threading.Tasks": "(,4.3.32767]", + "System.Threading.Tasks.Dataflow": "(,10.0.32767]", + "System.Threading.Tasks.Extensions": "(,5.0.32767]", + "System.Threading.Tasks.Parallel": "(,4.3.32767]", + "System.Threading.Thread": "(,4.3.32767]", + "System.Threading.ThreadPool": "(,4.3.32767]", + "System.Threading.Timer": "(,4.3.32767]", + "System.ValueTuple": "(,4.5.32767]", + "System.Xml.ReaderWriter": "(,4.3.32767]", + "System.Xml.XDocument": "(,4.3.32767]", + "System.Xml.XmlDocument": "(,4.3.32767]", + "System.Xml.XmlSerializer": "(,4.3.32767]", + "System.Xml.XPath": "(,4.3.32767]", + "System.Xml.XPath.XDocument": "(,5.0.32767]" + } + } + } + } +} \ No newline at end of file diff --git a/obj/project.nuget.cache b/obj/project.nuget.cache new file mode 100644 index 0000000..d9959d8 --- /dev/null +++ b/obj/project.nuget.cache @@ -0,0 +1,8 @@ +{ + "version": 2, + "dgSpecHash": "0H3kVNHnNAI=", + "success": true, + "projectFilePath": "/mnt/data/Work/Programming/MainProgram/Backend/SharedLogic/Generic/Generic.CL.csproj", + "expectedPackageFiles": [], + "logs": [] +} \ No newline at end of file