28 lines
800 B
C#
28 lines
800 B
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace View_by_Distance.Shared.Models;
|
|
|
|
public record FilePath(string DirectoryName,
|
|
string ExtensionLowered,
|
|
string FullName,
|
|
int? Id,
|
|
bool IsIdFormat,
|
|
bool IsPaddedIdFormat,
|
|
string Name,
|
|
string NameWithoutExtension)
|
|
{
|
|
|
|
public override string ToString()
|
|
{
|
|
string result = JsonSerializer.Serialize(this, FilePathSourceGenerationContext.Default.FilePath);
|
|
return result;
|
|
}
|
|
|
|
}
|
|
|
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
|
[JsonSerializable(typeof(FilePath))]
|
|
public partial class FilePathSourceGenerationContext : JsonSerializerContext
|
|
{
|
|
} |