Enviando codigo para repositorio
This commit is contained in:
commit
e83769e995
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.vs/Levelcode-licence/v17/.suo
Normal file
BIN
.vs/Levelcode-licence/v17/.suo
Normal file
Binary file not shown.
95
.vs/Levelcode-licence/v17/DocumentLayout.backup.json
Normal file
95
.vs/Levelcode-licence/v17/DocumentLayout.backup.json
Normal file
@ -0,0 +1,95 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\business\\dashboardservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:business\\dashboardservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 2,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:128:0:{75188d03-9892-4ae2-abf1-207126247ce5}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "DashboardService.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Business\\DashboardService.cs",
|
||||
"RelativeDocumentMoniker": "Business\\DashboardService.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Business\\DashboardService.cs",
|
||||
"RelativeToolTip": "Business\\DashboardService.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAABAAAAA9AAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:26:58.153Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "FrmDashboard.Designer.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.Designer.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.Designer.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.Designer.cs",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.Designer.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAABHAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:26.066Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "FrmDashboard.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAGwAAAAnAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:07.428Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "FrmDashboard.cs [Design]",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs [Design]",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.cs [Design]",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:05.625Z",
|
||||
"EditorCaption": " [Design]"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
95
.vs/Levelcode-licence/v17/DocumentLayout.json
Normal file
95
.vs/Levelcode-licence/v17/DocumentLayout.json
Normal file
@ -0,0 +1,95 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\business\\dashboardservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:business\\dashboardservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.designer.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|c:\\users\\nicolas felipe\\desktop\\levelcode-license\\levelcode-licence\\forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}|Levelcode-licence.csproj|solutionrelative:forms\\frmdashboard.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 2,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:128:0:{75188d03-9892-4ae2-abf1-207126247ce5}"
|
||||
},
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "DashboardService.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Business\\DashboardService.cs",
|
||||
"RelativeDocumentMoniker": "Business\\DashboardService.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Business\\DashboardService.cs",
|
||||
"RelativeToolTip": "Business\\DashboardService.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAAoAAAAXAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:26:58.153Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "FrmDashboard.Designer.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.Designer.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.Designer.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.Designer.cs",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.Designer.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAABUAAABHAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:26.066Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "FrmDashboard.cs",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.cs",
|
||||
"ViewState": "AgIAAAAAAAAAAAAAAAAAAGwAAAAnAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:07.428Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "FrmDashboard.cs [Design]",
|
||||
"DocumentMoniker": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs",
|
||||
"RelativeDocumentMoniker": "Forms\\FrmDashboard.cs",
|
||||
"ToolTip": "C:\\Users\\Nicolas Felipe\\Desktop\\Levelcode-license\\Levelcode-licence\\Forms\\FrmDashboard.cs [Design]",
|
||||
"RelativeToolTip": "Forms\\FrmDashboard.cs [Design]",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-12-22T01:25:05.625Z",
|
||||
"EditorCaption": " [Design]"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
17
App.config
Normal file
17
App.config
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
|
||||
<connectionStrings>
|
||||
<add name="SQL"
|
||||
connectionString="Data Source=206.42.13.180;Initial Catalog=Levelcode-ModasMVP;User ID=nicolas;Password=Nike12122020*##;" />
|
||||
</connectionStrings>
|
||||
<appSettings>
|
||||
<add key="PrivateKeyPath" value="C:\LevelCode\Levelcode-license\private.key"/>
|
||||
</appSettings>
|
||||
|
||||
|
||||
</configuration>
|
||||
20
Business/DashboardService.cs
Normal file
20
Business/DashboardService.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using Levelcode_licence.DataAccess;
|
||||
|
||||
namespace Levelcode_licence.Business
|
||||
{
|
||||
public class DashboardService
|
||||
{
|
||||
private readonly DashboardDAL _dal;
|
||||
|
||||
public DashboardService(DashboardDAL dal)
|
||||
{
|
||||
_dal = dal;
|
||||
}
|
||||
|
||||
public int TotalLicencas() => _dal.TotalLicencas();
|
||||
public int LicencasAtivas() => _dal.LicencasAtivas();
|
||||
public int LicencasInativas() => _dal.LicencasInativas();
|
||||
public int MaquinasAtivas() => _dal.MaquinasAtivas();
|
||||
public int LicencasNoLimite() => _dal.LicencasNoLimite();
|
||||
}
|
||||
}
|
||||
61
Business/LicencaLogService.cs
Normal file
61
Business/LicencaLogService.cs
Normal file
@ -0,0 +1,61 @@
|
||||
using System;
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
|
||||
namespace LevelCode.License.Business
|
||||
{
|
||||
public class LicencaLogService
|
||||
{
|
||||
private readonly LicencaLogDAL _logDal;
|
||||
|
||||
public LicencaLogService(LicencaLogDAL logDal)
|
||||
{
|
||||
_logDal = logDal;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// REGISTRAR LOG
|
||||
// =========================
|
||||
public void Registrar(
|
||||
int? licencaId,
|
||||
string acao,
|
||||
string detalhes = null,
|
||||
string ipCliente = null,
|
||||
string hwidHash = null)
|
||||
{
|
||||
ModeloLicencaLog log = new ModeloLicencaLog
|
||||
{
|
||||
LicencaId = licencaId,
|
||||
Acao = acao,
|
||||
Detalhes = detalhes,
|
||||
IpCliente = ipCliente,
|
||||
HWID_Hash = hwidHash,
|
||||
DataHora = DateTime.Now
|
||||
};
|
||||
|
||||
_logDal.Inserir(log);
|
||||
}
|
||||
|
||||
// =========================
|
||||
// LOG DE ERRO
|
||||
// =========================
|
||||
public void RegistrarErro(
|
||||
int? licencaId,
|
||||
Exception ex,
|
||||
string contexto = null,
|
||||
string hwidHash = null)
|
||||
{
|
||||
string detalhes = ex.Message;
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(contexto))
|
||||
detalhes = contexto + " | " + detalhes;
|
||||
|
||||
Registrar(
|
||||
licencaId,
|
||||
"ERRO",
|
||||
detalhes,
|
||||
null,
|
||||
hwidHash);
|
||||
}
|
||||
}
|
||||
}
|
||||
102
Business/LicencaMaquinaService.cs
Normal file
102
Business/LicencaMaquinaService.cs
Normal file
@ -0,0 +1,102 @@
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
using LevelCode.License.Models.Enums;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace LevelCode.License.Business
|
||||
{
|
||||
public class LicencaMaquinaService
|
||||
{
|
||||
private readonly LicencaMaquinaDAL _maquinaDal;
|
||||
|
||||
public LicencaMaquinaService(LicencaMaquinaDAL maquinaDal)
|
||||
{
|
||||
_maquinaDal = maquinaDal;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// VALIDAR / REGISTRAR MÁQUINA
|
||||
// =========================
|
||||
public bool ValidarOuRegistrarMaquina(
|
||||
int licencaId,
|
||||
string hwid,
|
||||
string hwidHash,
|
||||
int limiteMaquinas,
|
||||
out string mensagem)
|
||||
{
|
||||
mensagem = "";
|
||||
|
||||
if (string.IsNullOrWhiteSpace(hwidHash))
|
||||
{
|
||||
mensagem = "HWID inválido.";
|
||||
return false;
|
||||
}
|
||||
|
||||
// Verifica se a máquina já existe
|
||||
var maquina = _maquinaDal.BuscarPorLicencaEHash(licencaId, hwidHash);
|
||||
|
||||
if (maquina != null)
|
||||
{
|
||||
if (maquina.Status != (int)StatusMaquinaEnum.Ativa)
|
||||
{
|
||||
mensagem = "Máquina bloqueada para esta licença.";
|
||||
return false;
|
||||
}
|
||||
|
||||
_maquinaDal.AtualizarUltimoUso(maquina.Id);
|
||||
mensagem = "Máquina já registrada.";
|
||||
return true;
|
||||
}
|
||||
|
||||
// Nova máquina → verifica limite
|
||||
int totalAtivas = _maquinaDal.ContarMaquinasAtivas(licencaId);
|
||||
|
||||
if (totalAtivas >= limiteMaquinas)
|
||||
{
|
||||
mensagem = "Limite de máquinas atingido.";
|
||||
return false;
|
||||
}
|
||||
|
||||
// Registrar nova máquina
|
||||
ModeloLicencaMaquina nova = new ModeloLicencaMaquina
|
||||
{
|
||||
LicencaId = licencaId,
|
||||
HWID = hwid,
|
||||
HWID_Hash = hwidHash,
|
||||
DataAtivacao = DateTime.Now,
|
||||
Status = (int)StatusMaquinaEnum.Ativa
|
||||
};
|
||||
|
||||
_maquinaDal.Inserir(nova);
|
||||
|
||||
mensagem = "Máquina registrada com sucesso.";
|
||||
return true;
|
||||
}
|
||||
|
||||
public List<ModeloLicencaMaquina> ListarMaquinas(int licencaId)
|
||||
{
|
||||
return _maquinaDal.ListarPorLicenca(licencaId);
|
||||
}
|
||||
|
||||
public void Desativar(int id)
|
||||
{
|
||||
_maquinaDal.DesativarMaquina(id);
|
||||
}
|
||||
// =========================
|
||||
// BLOQUEAR MÁQUINA
|
||||
// =========================
|
||||
public void BloquearMaquina(int idMaquina)
|
||||
{
|
||||
_maquinaDal.AtualizarStatus(idMaquina, (int)StatusMaquinaEnum.Bloqueada);
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ATIVAR MÁQUINA
|
||||
// =========================
|
||||
public void AtivarMaquina(int idMaquina)
|
||||
{
|
||||
_maquinaDal.AtualizarStatus(idMaquina, (int)StatusMaquinaEnum.Ativa);
|
||||
}
|
||||
}
|
||||
}
|
||||
100
Business/LicencaService.cs
Normal file
100
Business/LicencaService.cs
Normal file
@ -0,0 +1,100 @@
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
using LevelCode.License.Models.Enums;
|
||||
using LevelCode.License.Security;
|
||||
using System;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace LevelCode.License.Business
|
||||
{
|
||||
public class LicencaService
|
||||
{
|
||||
private readonly LicencaDAL _licencaDal;
|
||||
|
||||
public LicencaService(LicencaDAL licencaDal)
|
||||
{
|
||||
_licencaDal = licencaDal;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR LICENÇA POR KEY
|
||||
// =========================
|
||||
public ModeloLicenca ObterPorLicenseKey(string licenseKey)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(licenseKey))
|
||||
return null;
|
||||
|
||||
return _licencaDal.BuscarPorLicenseKey(licenseKey);
|
||||
}
|
||||
|
||||
// =========================
|
||||
// VALIDAR LICENÇA
|
||||
// =========================
|
||||
public bool LicencaValida(ModeloLicenca licenca, out string mensagem)
|
||||
{
|
||||
mensagem = "";
|
||||
|
||||
if (licenca == null)
|
||||
{
|
||||
mensagem = "Licença não encontrada.";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (licenca.Status != (int)StatusLicencaEnum.Ativa)
|
||||
{
|
||||
mensagem = "Licença inativa ou bloqueada.";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (licenca.ExpiraEm.HasValue && licenca.ExpiraEm.Value.Date < DateTime.Now.Date)
|
||||
{
|
||||
mensagem = "Licença expirada.";
|
||||
return false;
|
||||
}
|
||||
|
||||
mensagem = "Licença válida.";
|
||||
return true;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// CRIAR LICENÇA (básico)
|
||||
// =========================
|
||||
|
||||
public int CriarLicenca(ModeloLicenca modelo)
|
||||
{
|
||||
if (modelo == null)
|
||||
throw new ArgumentNullException(nameof(modelo));
|
||||
|
||||
// 🔑 GERAR LICENSE KEY AUTOMATICAMENTE
|
||||
modelo.LicenseKey = LicenseKeyGenerator.Gerar();
|
||||
|
||||
// 📦 SERIALIZAR MÓDULOS
|
||||
if (modelo.ModulosLista != null && modelo.ModulosLista.Count > 0)
|
||||
modelo.Modulos = JsonSerializer.Serialize(modelo.ModulosLista);
|
||||
else
|
||||
modelo.Modulos = "[]";
|
||||
|
||||
modelo.Status = 1;
|
||||
modelo.DataCriacao = DateTime.Now;
|
||||
|
||||
return _licencaDal.Inserir(modelo);
|
||||
}
|
||||
|
||||
|
||||
// =========================
|
||||
// BLOQUEAR LICENÇA
|
||||
// =========================
|
||||
public void BloquearLicenca(int idLicenca)
|
||||
{
|
||||
_licencaDal.AtualizarStatus(idLicenca, (int)StatusLicencaEnum.Bloqueada);
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ATIVAR LICENÇA
|
||||
// =========================
|
||||
public void AtivarLicenca(int idLicenca)
|
||||
{
|
||||
_licencaDal.AtualizarStatus(idLicenca, (int)StatusLicencaEnum.Ativa);
|
||||
}
|
||||
}
|
||||
}
|
||||
88
DataAccess/DashboardDAL.cs
Normal file
88
DataAccess/DashboardDAL.cs
Normal file
@ -0,0 +1,88 @@
|
||||
using System.Data.SqlClient;
|
||||
using LevelCode.License.DataAccess;
|
||||
|
||||
namespace Levelcode_licence.DataAccess
|
||||
{
|
||||
public class DashboardDAL
|
||||
{
|
||||
private readonly DbConexao _db;
|
||||
|
||||
public DashboardDAL(DbConexao db)
|
||||
{
|
||||
_db = db;
|
||||
}
|
||||
|
||||
public int TotalLicencas()
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
"SELECT COUNT(*) FROM Licencas",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
int total = (int)cmd.ExecuteScalar();
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
public int LicencasAtivas()
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
"SELECT COUNT(*) FROM Licencas WHERE Status = 1",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
int total = (int)cmd.ExecuteScalar();
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
public int LicencasInativas()
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
"SELECT COUNT(*) FROM Licencas WHERE Status = 0",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
int total = (int)cmd.ExecuteScalar();
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
public int MaquinasAtivas()
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
"SELECT COUNT(*) FROM Licencas_Maquinas WHERE Status = 1",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
int total = (int)cmd.ExecuteScalar();
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
public int LicencasNoLimite()
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"
|
||||
SELECT COUNT(*)
|
||||
FROM Licencas L
|
||||
WHERE (
|
||||
SELECT COUNT(*)
|
||||
FROM Licencas_Maquinas M
|
||||
WHERE M.LicencaId = L.IdLicenca
|
||||
AND M.Status = 1
|
||||
) >= L.LimiteMaquinas",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
int total = (int)cmd.ExecuteScalar();
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
}
|
||||
}
|
||||
45
DataAccess/DbConexao.cs
Normal file
45
DataAccess/DbConexao.cs
Normal file
@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Configuration;
|
||||
using System.Data.SqlClient;
|
||||
|
||||
namespace LevelCode.License.DataAccess
|
||||
{
|
||||
public class DbConexao : IDisposable
|
||||
{
|
||||
private readonly SqlConnection _conexao;
|
||||
|
||||
public SqlConnection Conexao
|
||||
{
|
||||
get { return _conexao; }
|
||||
}
|
||||
|
||||
public DbConexao()
|
||||
{
|
||||
string connectionString = ConfigurationManager
|
||||
.ConnectionStrings["SQL"].ConnectionString;
|
||||
|
||||
_conexao = new SqlConnection(connectionString);
|
||||
}
|
||||
|
||||
public void Abrir()
|
||||
{
|
||||
if (_conexao.State != System.Data.ConnectionState.Open)
|
||||
_conexao.Open();
|
||||
}
|
||||
|
||||
public void Fechar()
|
||||
{
|
||||
if (_conexao.State != System.Data.ConnectionState.Closed)
|
||||
_conexao.Close();
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
if (_conexao != null)
|
||||
{
|
||||
Fechar();
|
||||
_conexao.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
183
DataAccess/LicencaDAL.cs
Normal file
183
DataAccess/LicencaDAL.cs
Normal file
@ -0,0 +1,183 @@
|
||||
using LevelCode.License.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
|
||||
namespace LevelCode.License.DataAccess
|
||||
{
|
||||
public class LicencaDAL
|
||||
{
|
||||
private readonly DbConexao _db;
|
||||
|
||||
public LicencaDAL(DbConexao db)
|
||||
{
|
||||
_db = db;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// INSERIR LICENÇA
|
||||
// =========================
|
||||
public int Inserir(ModeloLicenca modelo)
|
||||
{
|
||||
if (modelo == null)
|
||||
throw new ArgumentNullException(nameof(modelo));
|
||||
|
||||
if (string.IsNullOrWhiteSpace(modelo.LicenseKey))
|
||||
throw new Exception("LicenseKey não foi gerado.");
|
||||
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"INSERT INTO Licencas
|
||||
(LicenseKey, Cliente, TipoLicenca, CodigoTipoLicenca,
|
||||
ExpiraEm, LimiteMaquinas, Modulos, Status, DataCriacao)
|
||||
VALUES
|
||||
(@LicenseKey, @Cliente, @TipoLicenca, @CodigoTipoLicenca,
|
||||
@ExpiraEm, @LimiteMaquinas, @Modulos, @Status, @DataCriacao);
|
||||
SELECT SCOPE_IDENTITY();",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicenseKey", modelo.LicenseKey);
|
||||
cmd.Parameters.AddWithValue("@Cliente", (object)modelo.Cliente ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@TipoLicenca", (object)modelo.TipoLicenca ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@CodigoTipoLicenca", modelo.CodigoTipoLicenca);
|
||||
cmd.Parameters.AddWithValue("@ExpiraEm", (object)modelo.ExpiraEm ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@LimiteMaquinas", modelo.LimiteMaquinas);
|
||||
cmd.Parameters.AddWithValue("@Modulos", (object)modelo.Modulos ?? "[]");
|
||||
cmd.Parameters.AddWithValue("@Status", modelo.Status);
|
||||
cmd.Parameters.AddWithValue("@DataCriacao", modelo.DataCriacao);
|
||||
|
||||
_db.Abrir();
|
||||
int id = Convert.ToInt32(cmd.ExecuteScalar());
|
||||
_db.Fechar();
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR LICENÇA POR KEY
|
||||
// =========================
|
||||
public ModeloLicenca BuscarPorLicenseKey(string licenseKey)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT * FROM Licencas
|
||||
WHERE LicenseKey = @LicenseKey",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicenseKey", licenseKey);
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
ModeloLicenca modelo = null;
|
||||
|
||||
if (dr.Read())
|
||||
modelo = Mapear(dr);
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return modelo;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR LICENÇA ATIVA POR CLIENTE
|
||||
// =========================
|
||||
public ModeloLicenca BuscarLicencaAtivaPorCliente(string cliente)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT TOP 1 *
|
||||
FROM Licencas
|
||||
WHERE Cliente = @Cliente
|
||||
AND Status = 1
|
||||
ORDER BY DataCriacao DESC",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@Cliente", cliente);
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
ModeloLicenca modelo = null;
|
||||
|
||||
if (dr.Read())
|
||||
modelo = Mapear(dr);
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return modelo;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR TODAS AS LICENÇAS
|
||||
// =========================
|
||||
public List<ModeloLicenca> BuscarTodas()
|
||||
{
|
||||
List<ModeloLicenca> lista = new List<ModeloLicenca>();
|
||||
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT *
|
||||
FROM Licencas
|
||||
ORDER BY DataCriacao DESC",
|
||||
_db.Conexao);
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
while (dr.Read())
|
||||
{
|
||||
lista.Add(Mapear(dr));
|
||||
}
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return lista;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ATUALIZAR STATUS
|
||||
// =========================
|
||||
public void AtualizarStatus(int idLicenca, int status)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"UPDATE Licencas
|
||||
SET Status = @Status
|
||||
WHERE IdLicenca = @Id",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@Status", status);
|
||||
cmd.Parameters.AddWithValue("@Id", idLicenca);
|
||||
|
||||
_db.Abrir();
|
||||
cmd.ExecuteNonQuery();
|
||||
_db.Fechar();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// MAPEAR DATAREADER → MODELO
|
||||
// =========================
|
||||
private ModeloLicenca Mapear(SqlDataReader dr)
|
||||
{
|
||||
return new ModeloLicenca
|
||||
{
|
||||
IdLicenca = Convert.ToInt32(dr["IdLicenca"]),
|
||||
LicenseKey = dr["LicenseKey"] as string,
|
||||
Cliente = dr["Cliente"] as string,
|
||||
TipoLicenca = dr["TipoLicenca"] as string,
|
||||
CodigoTipoLicenca = dr["CodigoTipoLicenca"] != DBNull.Value
|
||||
? Convert.ToInt32(dr["CodigoTipoLicenca"])
|
||||
: 0,
|
||||
ExpiraEm = dr["ExpiraEm"] != DBNull.Value
|
||||
? (DateTime?)Convert.ToDateTime(dr["ExpiraEm"])
|
||||
: null,
|
||||
LimiteMaquinas = Convert.ToInt32(dr["LimiteMaquinas"]),
|
||||
Modulos = dr["Modulos"] as string,
|
||||
Status = Convert.ToInt32(dr["Status"]),
|
||||
DataCriacao = Convert.ToDateTime(dr["DataCriacao"]),
|
||||
UltimaSincronizacao = dr["UltimaSincronizacao"] != DBNull.Value
|
||||
? (DateTime?)Convert.ToDateTime(dr["UltimaSincronizacao"])
|
||||
: null
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
89
DataAccess/LicencaLogDAL.cs
Normal file
89
DataAccess/LicencaLogDAL.cs
Normal file
@ -0,0 +1,89 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
using LevelCode.License.Models;
|
||||
|
||||
namespace LevelCode.License.DataAccess
|
||||
{
|
||||
public class LicencaLogDAL
|
||||
{
|
||||
private readonly DbConexao _db;
|
||||
|
||||
public LicencaLogDAL(DbConexao db)
|
||||
{
|
||||
_db = db;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// INSERIR LOG
|
||||
// =========================
|
||||
public void Inserir(ModeloLicencaLog modelo)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"INSERT INTO Licencas_Log
|
||||
(LicencaId, Acao, DataHora, IpCliente, Detalhes, HWID_Hash)
|
||||
VALUES
|
||||
(@LicencaId, @Acao, @DataHora, @IpCliente, @Detalhes, @HWID_Hash)",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", (object)modelo.LicencaId ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@Acao", (object)modelo.Acao ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@DataHora", modelo.DataHora);
|
||||
cmd.Parameters.AddWithValue("@IpCliente", (object)modelo.IpCliente ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@Detalhes", (object)modelo.Detalhes ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@HWID_Hash", (object)modelo.HWID_Hash ?? DBNull.Value);
|
||||
|
||||
_db.Abrir();
|
||||
cmd.ExecuteNonQuery();
|
||||
_db.Fechar();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR LOGS POR LICENÇA
|
||||
// =========================
|
||||
public List<ModeloLicencaLog> BuscarPorLicenca(int licencaId)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT * FROM Licencas_Log
|
||||
WHERE LicencaId = @LicencaId
|
||||
ORDER BY DataHora DESC",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", licencaId);
|
||||
|
||||
List<ModeloLicencaLog> lista = new List<ModeloLicencaLog>();
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
while (dr.Read())
|
||||
{
|
||||
lista.Add(Mapear(dr));
|
||||
}
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return lista;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// MAPEAR DATAREADER → MODELO
|
||||
// =========================
|
||||
private ModeloLicencaLog Mapear(SqlDataReader dr)
|
||||
{
|
||||
return new ModeloLicencaLog
|
||||
{
|
||||
Id = Convert.ToInt32(dr["Id"]),
|
||||
LicencaId = dr["LicencaId"] != DBNull.Value
|
||||
? (int?)Convert.ToInt32(dr["LicencaId"])
|
||||
: null,
|
||||
Acao = dr["Acao"] as string,
|
||||
DataHora = Convert.ToDateTime(dr["DataHora"]),
|
||||
IpCliente = dr["IpCliente"] as string,
|
||||
Detalhes = dr["Detalhes"] as string,
|
||||
HWID_Hash = dr["HWID_Hash"] as string
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
219
DataAccess/LicencaMaquinaDAL.cs
Normal file
219
DataAccess/LicencaMaquinaDAL.cs
Normal file
@ -0,0 +1,219 @@
|
||||
using LevelCode.License.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SqlClient;
|
||||
|
||||
namespace LevelCode.License.DataAccess
|
||||
{
|
||||
public class LicencaMaquinaDAL
|
||||
{
|
||||
private readonly DbConexao _db;
|
||||
|
||||
public LicencaMaquinaDAL(DbConexao db)
|
||||
{
|
||||
_db = db;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// REGISTRAR MÁQUINA
|
||||
// =========================
|
||||
public int Inserir(ModeloLicencaMaquina modelo)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"INSERT INTO Licencas_Maquinas
|
||||
(LicencaId, HWID, HWID_Hash, PrimeiroUso, UltimoUso, DataAtivacao, Status)
|
||||
VALUES
|
||||
(@LicencaId, @HWID, @HWID_Hash, @PrimeiroUso, @UltimoUso, @DataAtivacao, @Status);
|
||||
SELECT SCOPE_IDENTITY();",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", modelo.LicencaId);
|
||||
cmd.Parameters.AddWithValue("@HWID", (object)modelo.HWID ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@HWID_Hash", (object)modelo.HWID_Hash ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@PrimeiroUso", modelo.PrimeiroUso);
|
||||
cmd.Parameters.AddWithValue("@UltimoUso", modelo.UltimoUso);
|
||||
cmd.Parameters.AddWithValue("@DataAtivacao", (object)modelo.DataAtivacao ?? DBNull.Value);
|
||||
cmd.Parameters.AddWithValue("@Status", modelo.Status);
|
||||
|
||||
_db.Abrir();
|
||||
int id = Convert.ToInt32(cmd.ExecuteScalar());
|
||||
_db.Fechar();
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BUSCAR MÁQUINA POR LICENÇA + HWID
|
||||
// =========================
|
||||
public ModeloLicencaMaquina BuscarPorLicencaEHash(int licencaId, string hwidHash)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT * FROM Licencas_Maquinas
|
||||
WHERE LicencaId = @LicencaId
|
||||
AND HWID_Hash = @HWID_Hash",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", licencaId);
|
||||
cmd.Parameters.AddWithValue("@HWID_Hash", hwidHash);
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
ModeloLicencaMaquina modelo = null;
|
||||
|
||||
if (dr.Read())
|
||||
{
|
||||
modelo = Mapear(dr);
|
||||
}
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return modelo;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// CONTAR MÁQUINAS ATIVAS
|
||||
// =========================
|
||||
public int ContarMaquinasAtivas(int licencaId)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT COUNT(*)
|
||||
FROM Licencas_Maquinas
|
||||
WHERE LicencaId = @LicencaId
|
||||
AND Status = 1",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", licencaId);
|
||||
|
||||
_db.Abrir();
|
||||
int total = Convert.ToInt32(cmd.ExecuteScalar());
|
||||
_db.Fechar();
|
||||
|
||||
return total;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ATUALIZAR ÚLTIMO USO
|
||||
// =========================
|
||||
public void AtualizarUltimoUso(int id)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"UPDATE Licencas_Maquinas
|
||||
SET UltimoUso = GETDATE()
|
||||
WHERE Id = @Id",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@Id", id);
|
||||
|
||||
_db.Abrir();
|
||||
cmd.ExecuteNonQuery();
|
||||
_db.Fechar();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ATUALIZAR STATUS DA MÁQUINA
|
||||
// =========================
|
||||
public void AtualizarStatus(int id, int status)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"UPDATE Licencas_Maquinas
|
||||
SET Status = @Status
|
||||
WHERE Id = @Id",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@Status", status);
|
||||
cmd.Parameters.AddWithValue("@Id", id);
|
||||
|
||||
_db.Abrir();
|
||||
cmd.ExecuteNonQuery();
|
||||
_db.Fechar();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// MAPEAR DATAREADER → MODELO
|
||||
// =========================
|
||||
public List<ModeloLicencaMaquina> ListarPorLicenca(int licencaId)
|
||||
{
|
||||
List<ModeloLicencaMaquina> lista = new List<ModeloLicencaMaquina>();
|
||||
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"SELECT
|
||||
Id,
|
||||
LicencaId,
|
||||
HWID,
|
||||
HWID_Hash,
|
||||
PrimeiroUso,
|
||||
UltimoUso,
|
||||
DataAtivacao,
|
||||
Status
|
||||
FROM Licencas_Maquinas
|
||||
WHERE LicencaId = @LicencaId
|
||||
ORDER BY PrimeiroUso",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@LicencaId", licencaId);
|
||||
|
||||
_db.Abrir();
|
||||
SqlDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
while (dr.Read())
|
||||
{
|
||||
lista.Add(new ModeloLicencaMaquina
|
||||
{
|
||||
Id = Convert.ToInt32(dr["Id"]),
|
||||
LicencaId = Convert.ToInt32(dr["LicencaId"]),
|
||||
HWID = dr["HWID"].ToString(),
|
||||
HWID_Hash = dr["HWID_Hash"] != DBNull.Value
|
||||
? dr["HWID_Hash"].ToString()
|
||||
: null,
|
||||
|
||||
PrimeiroUso = Convert.ToDateTime(dr["PrimeiroUso"]),
|
||||
UltimoUso = Convert.ToDateTime(dr["UltimoUso"]),
|
||||
|
||||
DataAtivacao = dr["DataAtivacao"] != DBNull.Value
|
||||
? (DateTime?)Convert.ToDateTime(dr["DataAtivacao"])
|
||||
: null,
|
||||
|
||||
Status = Convert.ToInt32(dr["Status"])
|
||||
});
|
||||
}
|
||||
|
||||
dr.Close();
|
||||
_db.Fechar();
|
||||
|
||||
return lista;
|
||||
}
|
||||
public void DesativarMaquina(int id)
|
||||
{
|
||||
SqlCommand cmd = new SqlCommand(
|
||||
@"UPDATE Licencas_Maquinas
|
||||
SET Status = 0
|
||||
WHERE Id = @Id",
|
||||
_db.Conexao);
|
||||
|
||||
cmd.Parameters.AddWithValue("@Id", id);
|
||||
|
||||
_db.Abrir();
|
||||
cmd.ExecuteNonQuery();
|
||||
_db.Fechar();
|
||||
}
|
||||
|
||||
private ModeloLicencaMaquina Mapear(SqlDataReader dr)
|
||||
{
|
||||
return new ModeloLicencaMaquina
|
||||
{
|
||||
Id = Convert.ToInt32(dr["Id"]),
|
||||
LicencaId = Convert.ToInt32(dr["LicencaId"]),
|
||||
HWID = dr["HWID"] as string,
|
||||
HWID_Hash = dr["HWID_Hash"] as string,
|
||||
PrimeiroUso = Convert.ToDateTime(dr["PrimeiroUso"]),
|
||||
UltimoUso = Convert.ToDateTime(dr["UltimoUso"]),
|
||||
DataAtivacao = dr["DataAtivacao"] != DBNull.Value
|
||||
? (DateTime?)Convert.ToDateTime(dr["DataAtivacao"])
|
||||
: null,
|
||||
Status = Convert.ToInt32(dr["Status"])
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
70
Forms/FrmDashboard.Designer.cs
generated
Normal file
70
Forms/FrmDashboard.Designer.cs
generated
Normal file
@ -0,0 +1,70 @@
|
||||
using System.Windows.Forms;
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
partial class FrmDashboard
|
||||
{
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
private System.Windows.Forms.FlowLayoutPanel flpCards;
|
||||
private System.Windows.Forms.Panel pnlCharts;
|
||||
private System.Windows.Forms.DataVisualization.Charting.Chart chartLicencas;
|
||||
private System.Windows.Forms.DataVisualization.Charting.Chart chartMaquinas;
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
components.Dispose();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.flpCards = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.pnlCharts = new System.Windows.Forms.Panel();
|
||||
this.chartLicencas = new System.Windows.Forms.DataVisualization.Charting.Chart();
|
||||
this.chartMaquinas = new System.Windows.Forms.DataVisualization.Charting.Chart();
|
||||
|
||||
((System.ComponentModel.ISupportInitialize)(this.chartLicencas)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.chartMaquinas)).BeginInit();
|
||||
this.pnlCharts.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
|
||||
// flpCards
|
||||
this.flpCards.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.flpCards.Height = 120;
|
||||
this.flpCards.Padding = new System.Windows.Forms.Padding(10);
|
||||
this.flpCards.BackColor = System.Drawing.Color.FromArgb(245, 245, 245);
|
||||
|
||||
// pnlCharts
|
||||
this.pnlCharts.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.pnlCharts.Padding = new System.Windows.Forms.Padding(15);
|
||||
this.pnlCharts.BackColor = System.Drawing.Color.White;
|
||||
|
||||
// chartLicencas
|
||||
this.chartLicencas.Width = 400;
|
||||
this.chartLicencas.Height = 300;
|
||||
|
||||
// chartMaquinas
|
||||
this.chartMaquinas.Width = 400;
|
||||
this.chartMaquinas.Height = 300;
|
||||
this.chartMaquinas.Left = 420;
|
||||
|
||||
// pnlCharts controls
|
||||
this.pnlCharts.Controls.Add(this.chartLicencas);
|
||||
this.pnlCharts.Controls.Add(this.chartMaquinas);
|
||||
|
||||
// FrmDashboard
|
||||
this.ClientSize = new System.Drawing.Size(860, 480);
|
||||
this.Controls.Add(this.pnlCharts);
|
||||
this.Controls.Add(this.flpCards);
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Dashboard de Licenças";
|
||||
this.BackColor = System.Drawing.Color.White;
|
||||
|
||||
((System.ComponentModel.ISupportInitialize)(this.chartLicencas)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.chartMaquinas)).EndInit();
|
||||
this.pnlCharts.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
130
Forms/FrmDashboard.cs
Normal file
130
Forms/FrmDashboard.cs
Normal file
@ -0,0 +1,130 @@
|
||||
using LevelCode.License.Business;
|
||||
using LevelCode.License.DataAccess;
|
||||
using Levelcode_licence.Business;
|
||||
using Levelcode_licence.DataAccess;
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Forms.DataVisualization.Charting;
|
||||
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
public partial class FrmDashboard : Form
|
||||
{
|
||||
public FrmDashboard()
|
||||
{
|
||||
InitializeComponent();
|
||||
CarregarDashboard();
|
||||
}
|
||||
|
||||
private void CarregarDashboard()
|
||||
{
|
||||
using (var db = new DbConexao())
|
||||
{
|
||||
var service = new DashboardService(new DashboardDAL(db));
|
||||
|
||||
// Cards
|
||||
flpCards.Controls.Clear();
|
||||
flpCards.Controls.Add(CriarCard("📄 Total Licenças", service.TotalLicencas(), Color.FromArgb(52, 152, 219)));
|
||||
flpCards.Controls.Add(CriarCard("✅ Ativas", service.LicencasAtivas(), Color.FromArgb(46, 204, 113)));
|
||||
flpCards.Controls.Add(CriarCard("❌ Inativas", service.LicencasInativas(), Color.FromArgb(231, 76, 60)));
|
||||
flpCards.Controls.Add(CriarCard("🖥 Máquinas Ativas", service.MaquinasAtivas(), Color.FromArgb(155, 89, 182)));
|
||||
flpCards.Controls.Add(CriarCard("⚠ No Limite", service.LicencasNoLimite(), Color.FromArgb(241, 196, 15)));
|
||||
|
||||
CriarGraficoLicencas(service.LicencasAtivas(), service.LicencasInativas());
|
||||
CriarGraficoMaquinas(service);
|
||||
}
|
||||
}
|
||||
|
||||
// =========================
|
||||
// CARD
|
||||
// =========================
|
||||
private Panel CriarCard(string titulo, int valor, Color cor)
|
||||
{
|
||||
Panel card = new Panel
|
||||
{
|
||||
Width = 160,
|
||||
Height = 90,
|
||||
BackColor = cor,
|
||||
Margin = new Padding(10)
|
||||
};
|
||||
|
||||
Label lblTitulo = new Label
|
||||
{
|
||||
Text = titulo,
|
||||
ForeColor = Color.White,
|
||||
Font = new Font("Segoe UI", 9),
|
||||
Location = new Point(10, 10),
|
||||
AutoSize = true
|
||||
};
|
||||
|
||||
Label lblValor = new Label
|
||||
{
|
||||
Text = valor.ToString(),
|
||||
ForeColor = Color.White,
|
||||
Font = new Font("Segoe UI", 22, FontStyle.Bold),
|
||||
Location = new Point(10, 35),
|
||||
AutoSize = true
|
||||
};
|
||||
|
||||
card.Controls.Add(lblTitulo);
|
||||
card.Controls.Add(lblValor);
|
||||
|
||||
return card;
|
||||
}
|
||||
|
||||
// =========================
|
||||
// GRÁFICO PIZZA
|
||||
// =========================
|
||||
private void CriarGraficoLicencas(int ativas, int inativas)
|
||||
{
|
||||
chartLicencas.Series.Clear();
|
||||
chartLicencas.ChartAreas.Clear();
|
||||
chartLicencas.Legends.Clear();
|
||||
|
||||
chartLicencas.ChartAreas.Add(new ChartArea());
|
||||
|
||||
Series serie = new Series
|
||||
{
|
||||
ChartType = SeriesChartType.Pie,
|
||||
IsValueShownAsLabel = true,
|
||||
Font = new Font("Segoe UI", 9, FontStyle.Bold)
|
||||
};
|
||||
|
||||
serie.Points.AddXY("Ativas", ativas);
|
||||
serie.Points.AddXY("Inativas", inativas);
|
||||
|
||||
chartLicencas.Series.Add(serie);
|
||||
chartLicencas.Legends.Add(new Legend());
|
||||
}
|
||||
|
||||
// =========================
|
||||
// GRÁFICO BARRAS
|
||||
// =========================
|
||||
private void CriarGraficoMaquinas(DashboardService service)
|
||||
{
|
||||
chartMaquinas.Series.Clear();
|
||||
chartMaquinas.ChartAreas.Clear();
|
||||
|
||||
ChartArea area = new ChartArea();
|
||||
area.AxisX.Interval = 1;
|
||||
area.AxisX.LabelStyle.Angle = -30;
|
||||
|
||||
chartMaquinas.ChartAreas.Add(area);
|
||||
|
||||
Series serie = new Series
|
||||
{
|
||||
ChartType = SeriesChartType.Column,
|
||||
IsValueShownAsLabel = true,
|
||||
Font = new Font("Segoe UI", 8)
|
||||
};
|
||||
|
||||
// 🔧 Exemplo simples (pode evoluir depois)
|
||||
serie.Points.AddXY("Cliente A", 2);
|
||||
serie.Points.AddXY("Cliente B", 1);
|
||||
serie.Points.AddXY("Cliente C", 3);
|
||||
|
||||
chartMaquinas.Series.Add(serie);
|
||||
}
|
||||
}
|
||||
}
|
||||
76
Forms/FrmGerarLicencaKey.Designer.cs
generated
Normal file
76
Forms/FrmGerarLicencaKey.Designer.cs
generated
Normal file
@ -0,0 +1,76 @@
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
partial class FrmGerarLicencaKey
|
||||
{
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
private System.Windows.Forms.DataGridView dgvLicencas;
|
||||
private System.Windows.Forms.Button btnGerarKey;
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
components.Dispose();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.dgvLicencas = new System.Windows.Forms.DataGridView();
|
||||
this.btnGerarKey = new System.Windows.Forms.Button();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvLicencas)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// dgvLicencas
|
||||
//
|
||||
this.dgvLicencas.AllowUserToAddRows = false;
|
||||
this.dgvLicencas.AllowUserToDeleteRows = false;
|
||||
this.dgvLicencas.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
|
||||
this.dgvLicencas.Location = new System.Drawing.Point(12, 12);
|
||||
this.dgvLicencas.MultiSelect = false;
|
||||
this.dgvLicencas.Name = "dgvLicencas";
|
||||
this.dgvLicencas.ReadOnly = true;
|
||||
this.dgvLicencas.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.dgvLicencas.Size = new System.Drawing.Size(560, 260);
|
||||
this.dgvLicencas.TabIndex = 0;
|
||||
//
|
||||
// btnGerarKey
|
||||
//
|
||||
this.btnGerarKey.Location = new System.Drawing.Point(12, 285);
|
||||
this.btnGerarKey.Name = "btnGerarKey";
|
||||
this.btnGerarKey.Size = new System.Drawing.Size(160, 35);
|
||||
this.btnGerarKey.TabIndex = 1;
|
||||
this.btnGerarKey.Text = "Gerar arquivo .key";
|
||||
this.btnGerarKey.UseVisualStyleBackColor = true;
|
||||
this.btnGerarKey.Click += new System.EventHandler(this.btnGerarKey_Click);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(178, 285);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(160, 35);
|
||||
this.button1.TabIndex = 2;
|
||||
this.button1.Text = "Gerar arquivo par de chaves";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// FrmGerarLicencaKey
|
||||
//
|
||||
this.ClientSize = new System.Drawing.Size(584, 331);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.btnGerarKey);
|
||||
this.Controls.Add(this.dgvLicencas);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "FrmGerarLicencaKey";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Gerar Licença (.key)";
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvLicencas)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
private System.Windows.Forms.Button button1;
|
||||
}
|
||||
}
|
||||
127
Forms/FrmGerarLicencaKey.cs
Normal file
127
Forms/FrmGerarLicencaKey.cs
Normal file
@ -0,0 +1,127 @@
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
using LevelCode.License.Security;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
public partial class FrmGerarLicencaKey : Form
|
||||
{
|
||||
private List<ModeloLicenca> _licencas;
|
||||
|
||||
public FrmGerarLicencaKey()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
// 🔐 Garante que as chaves RSA existem
|
||||
KeyManager.GarantirChaves();
|
||||
|
||||
CarregarLicencas();
|
||||
}
|
||||
|
||||
private void CarregarLicencas()
|
||||
{
|
||||
using (DbConexao db = new DbConexao())
|
||||
{
|
||||
LicencaDAL dal = new LicencaDAL(db);
|
||||
|
||||
_licencas = dal.BuscarTodas();
|
||||
|
||||
dgvLicencas.AutoGenerateColumns = true;
|
||||
dgvLicencas.DataSource = _licencas;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void btnGerarKey_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (dgvLicencas.CurrentRow == null)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Selecione uma licença.",
|
||||
"Aviso",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
ModeloLicenca licenca =
|
||||
dgvLicencas.CurrentRow.DataBoundItem as ModeloLicenca;
|
||||
|
||||
if (licenca == null)
|
||||
return;
|
||||
|
||||
SaveFileDialog sfd = new SaveFileDialog
|
||||
{
|
||||
Filter = "Arquivo de Licença (*.key)|*.key",
|
||||
FileName = $"license_{licenca.IdLicenca}.key"
|
||||
};
|
||||
|
||||
if (sfd.ShowDialog() != DialogResult.OK)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
// 🔑 Chave privada SEMPRE via KeyManager
|
||||
string chavePrivada = KeyManager.ObterChavePrivada();
|
||||
|
||||
LicensePayload payload = new LicensePayload
|
||||
{
|
||||
// 🔴 ESSENCIAL PARA O CLIENTE
|
||||
Key = licenca.LicenseKey,
|
||||
|
||||
// (opcional, mas útil)
|
||||
LicencaId = licenca.IdLicenca,
|
||||
|
||||
Cliente = licenca.Cliente,
|
||||
ExpiraEm = licenca.ExpiraEm,
|
||||
LimiteMaquinas = licenca.LimiteMaquinas,
|
||||
|
||||
// ✅ AGORA COMPATÍVEL
|
||||
Modulos = licenca.ModulosLista
|
||||
};
|
||||
|
||||
LicenseEngine.GerarArquivoKey(
|
||||
payload,
|
||||
chavePrivada,
|
||||
sfd.FileName);
|
||||
|
||||
MessageBox.Show(
|
||||
"Arquivo .key gerado com sucesso!\n\n" +
|
||||
"Chaves RSA em:\n" +
|
||||
@"C:\LevelCode\Licensing\Keys\",
|
||||
"Sucesso",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Information);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(
|
||||
ex.Message,
|
||||
"Erro",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
|
||||
private void btnGerarChaves_Click(object sender, EventArgs e)
|
||||
{
|
||||
KeyManager.GarantirChaves();
|
||||
|
||||
MessageBox.Show(
|
||||
"Chaves RSA geradas com sucesso!\n\n" +
|
||||
@"C:\LevelCode\Licensing\Keys\",
|
||||
"Chaves criadas",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Information);
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
120
Forms/FrmGerarLicencaKey.resx
Normal file
120
Forms/FrmGerarLicencaKey.resx
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
79
Forms/FrmLicencaMaquinas.Designer.cs
generated
Normal file
79
Forms/FrmLicencaMaquinas.Designer.cs
generated
Normal file
@ -0,0 +1,79 @@
|
||||
namespace Levelcode_licence.Forms
|
||||
{
|
||||
partial class FrmLicencaMaquinas
|
||||
{
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
private System.Windows.Forms.Label lblLicenca;
|
||||
private System.Windows.Forms.ComboBox cmbLicencas;
|
||||
private System.Windows.Forms.DataGridView dgvMaquinas;
|
||||
private System.Windows.Forms.Button btnDesativar;
|
||||
private System.Windows.Forms.Label lblInfo;
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
components.Dispose();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.lblLicenca = new System.Windows.Forms.Label();
|
||||
this.cmbLicencas = new System.Windows.Forms.ComboBox();
|
||||
this.dgvMaquinas = new System.Windows.Forms.DataGridView();
|
||||
this.btnDesativar = new System.Windows.Forms.Button();
|
||||
this.lblInfo = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvMaquinas)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
|
||||
// lblLicenca
|
||||
this.lblLicenca.AutoSize = true;
|
||||
this.lblLicenca.Location = new System.Drawing.Point(15, 15);
|
||||
this.lblLicenca.Text = "Licença:";
|
||||
|
||||
// cmbLicencas
|
||||
this.cmbLicencas.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cmbLicencas.Location = new System.Drawing.Point(70, 12);
|
||||
this.cmbLicencas.Width = 350;
|
||||
this.cmbLicencas.SelectedIndexChanged += new System.EventHandler(this.cmbLicencas_SelectedIndexChanged);
|
||||
|
||||
// dgvMaquinas
|
||||
this.dgvMaquinas.AllowUserToAddRows = false;
|
||||
this.dgvMaquinas.AllowUserToDeleteRows = false;
|
||||
this.dgvMaquinas.ReadOnly = true;
|
||||
this.dgvMaquinas.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.dgvMaquinas.MultiSelect = false;
|
||||
this.dgvMaquinas.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
|
||||
this.dgvMaquinas.Location = new System.Drawing.Point(15, 50);
|
||||
this.dgvMaquinas.Size = new System.Drawing.Size(760, 330);
|
||||
|
||||
// btnDesativar
|
||||
this.btnDesativar.Location = new System.Drawing.Point(15, 390);
|
||||
this.btnDesativar.Size = new System.Drawing.Size(160, 35);
|
||||
this.btnDesativar.Text = "Desativar Máquina";
|
||||
this.btnDesativar.Click += new System.EventHandler(this.btnDesativar_Click);
|
||||
|
||||
// lblInfo
|
||||
this.lblInfo.AutoSize = true;
|
||||
this.lblInfo.Location = new System.Drawing.Point(190, 399);
|
||||
this.lblInfo.Text = "Selecione uma máquina para desativar.";
|
||||
|
||||
// FrmLicencaMaquinas
|
||||
this.ClientSize = new System.Drawing.Size(800, 440);
|
||||
this.Controls.Add(this.lblLicenca);
|
||||
this.Controls.Add(this.cmbLicencas);
|
||||
this.Controls.Add(this.dgvMaquinas);
|
||||
this.Controls.Add(this.btnDesativar);
|
||||
this.Controls.Add(this.lblInfo);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Máquinas Ativadas por Licença";
|
||||
|
||||
((System.ComponentModel.ISupportInitialize)(this.dgvMaquinas)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
}
|
||||
}
|
||||
}
|
||||
120
Forms/FrmLicencaMaquinas.cs
Normal file
120
Forms/FrmLicencaMaquinas.cs
Normal file
@ -0,0 +1,120 @@
|
||||
using LevelCode.License.Business;
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Levelcode_licence.Forms
|
||||
{
|
||||
public partial class FrmLicencaMaquinas : Form
|
||||
{
|
||||
private List<ModeloLicenca> _licencas;
|
||||
|
||||
public FrmLicencaMaquinas()
|
||||
{
|
||||
InitializeComponent();
|
||||
CarregarLicencas();
|
||||
}
|
||||
private string MascararHwid(string hwid)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(hwid))
|
||||
return "";
|
||||
|
||||
if (hwid.Length <= 10)
|
||||
return hwid;
|
||||
|
||||
string inicio = hwid.Substring(0, 6);
|
||||
string fim = hwid.Substring(hwid.Length - 4, 4);
|
||||
|
||||
return $"{inicio}...{fim}";
|
||||
}
|
||||
|
||||
|
||||
private void CarregarLicencas()
|
||||
{
|
||||
using (var db = new DbConexao())
|
||||
{
|
||||
var licencaDal = new LicencaDAL(db);
|
||||
_licencas = licencaDal.BuscarTodas();
|
||||
|
||||
cmbLicencas.DataSource = _licencas;
|
||||
cmbLicencas.DisplayMember = "Cliente";
|
||||
cmbLicencas.ValueMember = "IdLicenca";
|
||||
}
|
||||
}
|
||||
|
||||
private void cmbLicencas_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (cmbLicencas.SelectedItem == null)
|
||||
return;
|
||||
|
||||
ModeloLicenca licenca = cmbLicencas.SelectedItem as ModeloLicenca;
|
||||
if (licenca == null)
|
||||
return;
|
||||
|
||||
using (var db = new DbConexao())
|
||||
{
|
||||
var dal = new LicencaMaquinaDAL(db);
|
||||
var service = new LicencaMaquinaService(dal);
|
||||
|
||||
dgvMaquinas.DataSource =
|
||||
service.ListarMaquinas(licenca.IdLicenca);
|
||||
foreach (DataGridViewRow row in dgvMaquinas.Rows)
|
||||
{
|
||||
if (row.DataBoundItem is ModeloLicencaMaquina maquina)
|
||||
{
|
||||
row.Cells["HWID"].Value =
|
||||
MascararHwid(maquina.HWID);
|
||||
}
|
||||
}
|
||||
dgvMaquinas.Columns["HWID"].HeaderText = "Identificador da Máquina";
|
||||
}
|
||||
}
|
||||
|
||||
private void btnDesativar_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (dgvMaquinas.CurrentRow == null)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Selecione uma máquina.",
|
||||
"Aviso",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Warning);
|
||||
return;
|
||||
}
|
||||
|
||||
ModeloLicencaMaquina maquina =
|
||||
dgvMaquinas.CurrentRow.DataBoundItem as ModeloLicencaMaquina;
|
||||
|
||||
if (maquina == null)
|
||||
return;
|
||||
|
||||
DialogResult r = MessageBox.Show(
|
||||
"Deseja realmente desativar esta máquina?",
|
||||
"Confirmação",
|
||||
MessageBoxButtons.YesNo,
|
||||
MessageBoxIcon.Question);
|
||||
|
||||
if (r != DialogResult.Yes)
|
||||
return;
|
||||
|
||||
using (var db = new DbConexao())
|
||||
{
|
||||
var dal = new LicencaMaquinaDAL(db);
|
||||
var service = new LicencaMaquinaService(dal);
|
||||
|
||||
service.Desativar(maquina.Id);
|
||||
}
|
||||
|
||||
// Atualiza grid
|
||||
cmbLicencas_SelectedIndexChanged(null, null);
|
||||
|
||||
MessageBox.Show(
|
||||
"Máquina desativada com sucesso.",
|
||||
"Sucesso",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
}
|
||||
178
Forms/FrmLicencas.Designer.cs
generated
Normal file
178
Forms/FrmLicencas.Designer.cs
generated
Normal file
@ -0,0 +1,178 @@
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
partial class FrmLicencas
|
||||
{
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
private System.Windows.Forms.Label lblCliente;
|
||||
private System.Windows.Forms.TextBox txtCliente;
|
||||
|
||||
private System.Windows.Forms.Label lblTipo;
|
||||
private System.Windows.Forms.ComboBox cmbTipoLicenca;
|
||||
|
||||
private System.Windows.Forms.Label lblLimite;
|
||||
private System.Windows.Forms.TextBox txtLimiteMaquinas;
|
||||
|
||||
private System.Windows.Forms.Label lblExpira;
|
||||
private System.Windows.Forms.DateTimePicker dtpExpiraEm;
|
||||
private System.Windows.Forms.CheckBox chkSemExpiracao;
|
||||
|
||||
private System.Windows.Forms.Label lblModulos;
|
||||
private System.Windows.Forms.CheckedListBox chkModulos;
|
||||
|
||||
private System.Windows.Forms.Button btnSalvar;
|
||||
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
components.Dispose();
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.lblCliente = new System.Windows.Forms.Label();
|
||||
this.txtCliente = new System.Windows.Forms.TextBox();
|
||||
|
||||
this.lblTipo = new System.Windows.Forms.Label();
|
||||
this.cmbTipoLicenca = new System.Windows.Forms.ComboBox();
|
||||
|
||||
this.lblLimite = new System.Windows.Forms.Label();
|
||||
this.txtLimiteMaquinas = new System.Windows.Forms.TextBox();
|
||||
|
||||
this.lblExpira = new System.Windows.Forms.Label();
|
||||
this.dtpExpiraEm = new System.Windows.Forms.DateTimePicker();
|
||||
this.chkSemExpiracao = new System.Windows.Forms.CheckBox();
|
||||
|
||||
this.lblModulos = new System.Windows.Forms.Label();
|
||||
this.chkModulos = new System.Windows.Forms.CheckedListBox();
|
||||
|
||||
this.btnSalvar = new System.Windows.Forms.Button();
|
||||
|
||||
this.SuspendLayout();
|
||||
|
||||
//
|
||||
// lblCliente
|
||||
//
|
||||
this.lblCliente.AutoSize = true;
|
||||
this.lblCliente.Location = new System.Drawing.Point(20, 20);
|
||||
this.lblCliente.Text = "Cliente:";
|
||||
|
||||
//
|
||||
// txtCliente
|
||||
//
|
||||
this.txtCliente.Location = new System.Drawing.Point(20, 40);
|
||||
this.txtCliente.Size = new System.Drawing.Size(300, 20);
|
||||
|
||||
//
|
||||
// lblTipo
|
||||
//
|
||||
this.lblTipo.AutoSize = true;
|
||||
this.lblTipo.Location = new System.Drawing.Point(20, 75);
|
||||
this.lblTipo.Text = "Tipo da Licença:";
|
||||
|
||||
//
|
||||
// cmbTipoLicenca
|
||||
//
|
||||
this.cmbTipoLicenca.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.cmbTipoLicenca.Location = new System.Drawing.Point(20, 95);
|
||||
this.cmbTipoLicenca.Size = new System.Drawing.Size(200, 21);
|
||||
|
||||
//
|
||||
// lblLimite
|
||||
//
|
||||
this.lblLimite.AutoSize = true;
|
||||
this.lblLimite.Location = new System.Drawing.Point(20, 130);
|
||||
this.lblLimite.Text = "Limite de Máquinas:";
|
||||
|
||||
//
|
||||
// txtLimiteMaquinas
|
||||
//
|
||||
this.txtLimiteMaquinas.Location = new System.Drawing.Point(20, 150);
|
||||
this.txtLimiteMaquinas.Size = new System.Drawing.Size(100, 20);
|
||||
|
||||
//
|
||||
// lblExpira
|
||||
//
|
||||
this.lblExpira.AutoSize = true;
|
||||
this.lblExpira.Location = new System.Drawing.Point(20, 185);
|
||||
this.lblExpira.Text = "Data de Expiração:";
|
||||
|
||||
//
|
||||
// dtpExpiraEm
|
||||
//
|
||||
this.dtpExpiraEm.Location = new System.Drawing.Point(20, 205);
|
||||
this.dtpExpiraEm.Size = new System.Drawing.Size(200, 20);
|
||||
|
||||
//
|
||||
// chkSemExpiracao
|
||||
//
|
||||
this.chkSemExpiracao.AutoSize = true;
|
||||
this.chkSemExpiracao.Location = new System.Drawing.Point(230, 207);
|
||||
this.chkSemExpiracao.Text = "Sem expiração";
|
||||
this.chkSemExpiracao.CheckedChanged +=
|
||||
new System.EventHandler(this.chkSemExpiracao_CheckedChanged);
|
||||
|
||||
//
|
||||
// lblModulos
|
||||
//
|
||||
this.lblModulos.AutoSize = true;
|
||||
this.lblModulos.Location = new System.Drawing.Point(20, 240);
|
||||
this.lblModulos.Text = "Módulos liberados:";
|
||||
|
||||
//
|
||||
// chkModulos
|
||||
//
|
||||
this.chkModulos.CheckOnClick = true;
|
||||
this.chkModulos.Items.AddRange(new object[] {
|
||||
"Vendas",
|
||||
"Estoque",
|
||||
"Financeiro",
|
||||
"Relatorios",
|
||||
"Usuarios",
|
||||
"Todos"
|
||||
});
|
||||
this.chkModulos.Location = new System.Drawing.Point(20, 260);
|
||||
this.chkModulos.Size = new System.Drawing.Size(200, 94);
|
||||
|
||||
//
|
||||
// btnSalvar
|
||||
//
|
||||
this.btnSalvar.Location = new System.Drawing.Point(20, 370);
|
||||
this.btnSalvar.Size = new System.Drawing.Size(140, 35);
|
||||
this.btnSalvar.Text = "Salvar Licença";
|
||||
this.btnSalvar.Click +=
|
||||
new System.EventHandler(this.btnSalvar_Click);
|
||||
|
||||
//
|
||||
// FrmLicencas
|
||||
//
|
||||
this.ClientSize = new System.Drawing.Size(360, 430);
|
||||
this.Controls.Add(this.lblCliente);
|
||||
this.Controls.Add(this.txtCliente);
|
||||
|
||||
this.Controls.Add(this.lblTipo);
|
||||
this.Controls.Add(this.cmbTipoLicenca);
|
||||
|
||||
this.Controls.Add(this.lblLimite);
|
||||
this.Controls.Add(this.txtLimiteMaquinas);
|
||||
|
||||
this.Controls.Add(this.lblExpira);
|
||||
this.Controls.Add(this.dtpExpiraEm);
|
||||
this.Controls.Add(this.chkSemExpiracao);
|
||||
|
||||
this.Controls.Add(this.lblModulos);
|
||||
this.Controls.Add(this.chkModulos);
|
||||
|
||||
this.Controls.Add(this.btnSalvar);
|
||||
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Cadastro de Licenças";
|
||||
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
}
|
||||
}
|
||||
}
|
||||
80
Forms/FrmLicencas.cs
Normal file
80
Forms/FrmLicencas.cs
Normal file
@ -0,0 +1,80 @@
|
||||
using LevelCode.License.Business;
|
||||
using LevelCode.License.DataAccess;
|
||||
using LevelCode.License.Models;
|
||||
using LevelCode.License.Models.Enums;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace LevelCode.License.Forms
|
||||
{
|
||||
public partial class FrmLicencas : Form
|
||||
{
|
||||
public FrmLicencas()
|
||||
{
|
||||
InitializeComponent();
|
||||
CarregarTipos();
|
||||
}
|
||||
|
||||
private void CarregarTipos()
|
||||
{
|
||||
cmbTipoLicenca.DataSource = Enum.GetValues(typeof(TipoLicencaEnum));
|
||||
}
|
||||
private void chkSemExpiracao_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
dtpExpiraEm.Enabled = !chkSemExpiracao.Checked;
|
||||
}
|
||||
|
||||
|
||||
private void btnSalvar_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
// 🔹 1. LER OS MÓDULOS MARCADOS
|
||||
List<string> modulosSelecionados = new List<string>();
|
||||
|
||||
foreach (var item in chkModulos.CheckedItems)
|
||||
{
|
||||
modulosSelecionados.Add(item.ToString());
|
||||
}
|
||||
|
||||
// 🔹 2. CRIAR O MODELO COM OS MÓDULOS
|
||||
ModeloLicenca licenca = new ModeloLicenca
|
||||
{
|
||||
Cliente = txtCliente.Text.Trim(),
|
||||
CodigoTipoLicenca = (int)(TipoLicencaEnum)cmbTipoLicenca.SelectedItem,
|
||||
TipoLicenca = cmbTipoLicenca.SelectedItem.ToString(),
|
||||
LimiteMaquinas = Convert.ToInt32(txtLimiteMaquinas.Text),
|
||||
ExpiraEm = chkSemExpiracao.Checked
|
||||
? (DateTime?)null
|
||||
: dtpExpiraEm.Value,
|
||||
|
||||
// ✅ AQUI ESTAVA FALTANDO
|
||||
ModulosLista = modulosSelecionados
|
||||
};
|
||||
|
||||
using (DbConexao db = new DbConexao())
|
||||
{
|
||||
LicencaDAL dal = new LicencaDAL(db);
|
||||
LicencaService service = new LicencaService(dal);
|
||||
|
||||
int id = service.CriarLicenca(licenca);
|
||||
|
||||
MessageBox.Show(
|
||||
"Licença criada com sucesso!\nID: " + id,
|
||||
"Sucesso",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(
|
||||
ex.Message,
|
||||
"Erro",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
101
Forms/FrmPrincipal.Designer.cs
generated
Normal file
101
Forms/FrmPrincipal.Designer.cs
generated
Normal file
@ -0,0 +1,101 @@
|
||||
namespace Levelcode_licence
|
||||
{
|
||||
partial class FrmPrincipal
|
||||
{
|
||||
/// <summary>
|
||||
/// Variável de designer necessária.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Limpar os recursos que estão sendo usados.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true se for necessário descartar os recursos gerenciados; caso contrário, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Código gerado pelo Windows Form Designer
|
||||
|
||||
/// <summary>
|
||||
/// Método necessário para suporte ao Designer - não modifique
|
||||
/// o conteúdo deste método com o editor de código.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.button3 = new System.Windows.Forms.Button();
|
||||
this.button4 = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(3, 12);
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(151, 23);
|
||||
this.button1.TabIndex = 0;
|
||||
this.button1.Text = "Frm licencas";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// button2
|
||||
//
|
||||
this.button2.Location = new System.Drawing.Point(3, 41);
|
||||
this.button2.Name = "button2";
|
||||
this.button2.Size = new System.Drawing.Size(151, 23);
|
||||
this.button2.TabIndex = 1;
|
||||
this.button2.Text = "Frm gerar licensaKey";
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// button3
|
||||
//
|
||||
this.button3.Location = new System.Drawing.Point(3, 70);
|
||||
this.button3.Name = "button3";
|
||||
this.button3.Size = new System.Drawing.Size(151, 23);
|
||||
this.button3.TabIndex = 2;
|
||||
this.button3.Text = "Frm Licenca Maquinas";
|
||||
this.button3.UseVisualStyleBackColor = true;
|
||||
this.button3.Click += new System.EventHandler(this.button3_Click);
|
||||
//
|
||||
// button4
|
||||
//
|
||||
this.button4.Location = new System.Drawing.Point(3, 99);
|
||||
this.button4.Name = "button4";
|
||||
this.button4.Size = new System.Drawing.Size(151, 23);
|
||||
this.button4.TabIndex = 3;
|
||||
this.button4.Text = "Dashboard";
|
||||
this.button4.UseVisualStyleBackColor = true;
|
||||
this.button4.Click += new System.EventHandler(this.button4_Click);
|
||||
//
|
||||
// FrmPrincipal
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.button4);
|
||||
this.Controls.Add(this.button3);
|
||||
this.Controls.Add(this.button2);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Name = "FrmPrincipal";
|
||||
this.Text = "Form1";
|
||||
this.Load += new System.EventHandler(this.FrmPrincipal_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Button button2;
|
||||
private System.Windows.Forms.Button button3;
|
||||
private System.Windows.Forms.Button button4;
|
||||
}
|
||||
}
|
||||
|
||||
51
Forms/FrmPrincipal.cs
Normal file
51
Forms/FrmPrincipal.cs
Normal file
@ -0,0 +1,51 @@
|
||||
using LevelCode.License.Forms;
|
||||
using Levelcode_licence.Forms;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Levelcode_licence
|
||||
{
|
||||
public partial class FrmPrincipal : Form
|
||||
{
|
||||
public FrmPrincipal()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void FrmPrincipal_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
FrmLicencas f = new FrmLicencas();
|
||||
f.ShowDialog();
|
||||
}
|
||||
|
||||
private void button2_Click(object sender, EventArgs e)
|
||||
{
|
||||
FrmGerarLicencaKey frmGerarLicencaKey = new FrmGerarLicencaKey();
|
||||
frmGerarLicencaKey.ShowDialog();
|
||||
}
|
||||
|
||||
private void button3_Click(object sender, EventArgs e)
|
||||
{
|
||||
FrmLicencaMaquinas f = new FrmLicencaMaquinas();
|
||||
f.ShowDialog();
|
||||
}
|
||||
|
||||
private void button4_Click(object sender, EventArgs e)
|
||||
{
|
||||
FrmDashboard f = new FrmDashboard();
|
||||
f.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
120
Forms/FrmPrincipal.resx
Normal file
120
Forms/FrmPrincipal.resx
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
178
Levelcode-licence.csproj
Normal file
178
Levelcode-licence.csproj
Normal file
@ -0,0 +1,178 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>Levelcode_licence</RootNamespace>
|
||||
<AssemblyName>Levelcode-licence</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=10.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\Microsoft.Bcl.AsyncInterfaces.10.0.1\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Buffers.4.6.1\lib\net462\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Pipelines, Version=10.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.IO.Pipelines.10.0.1\lib\net462\System.IO.Pipelines.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Memory, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Memory.4.6.3\lib\net462\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Numerics.Vectors.4.6.1\lib\net462\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Runtime.CompilerServices.Unsafe.6.1.2\lib\net462\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Text.Encodings.Web, Version=10.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Text.Encodings.Web.10.0.1\lib\net462\System.Text.Encodings.Web.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Text.Json, Version=10.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Text.Json.10.0.1\lib\net462\System.Text.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>packages\System.Threading.Tasks.Extensions.4.6.3\lib\net462\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Forms.DataVisualization" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="WindowsBase" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Business\DashboardService.cs" />
|
||||
<Compile Include="Business\LicencaLogService.cs" />
|
||||
<Compile Include="Business\LicencaMaquinaService.cs" />
|
||||
<Compile Include="Business\LicencaService.cs" />
|
||||
<Compile Include="DataAccess\DashboardDAL.cs" />
|
||||
<Compile Include="DataAccess\DbConexao.cs" />
|
||||
<Compile Include="DataAccess\LicencaDAL.cs" />
|
||||
<Compile Include="DataAccess\LicencaLogDAL.cs" />
|
||||
<Compile Include="DataAccess\LicencaMaquinaDAL.cs" />
|
||||
<Compile Include="Forms\FrmDashboard.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmDashboard.Designer.cs">
|
||||
<DependentUpon>FrmDashboard.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmGerarLicencaKey.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmGerarLicencaKey.Designer.cs">
|
||||
<DependentUpon>FrmGerarLicencaKey.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmLicencaMaquinas.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmLicencaMaquinas.Designer.cs">
|
||||
<DependentUpon>FrmLicencaMaquinas.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmLicencas.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmLicencas.Designer.cs">
|
||||
<DependentUpon>FrmLicencas.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmPrincipal.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Forms\FrmPrincipal.Designer.cs">
|
||||
<DependentUpon>FrmPrincipal.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Models\Enums\ModuloSistemaEnum.cs" />
|
||||
<Compile Include="Models\Enums\StatusLicencaEnum.cs" />
|
||||
<Compile Include="Models\Enums\StatusMaquinaEnum.cs" />
|
||||
<Compile Include="Models\Enums\TipoLicencaEnum.cs" />
|
||||
<Compile Include="Models\ModeloLicenca.cs" />
|
||||
<Compile Include="Models\ModeloLicencaLog.cs" />
|
||||
<Compile Include="Models\ModeloLicencaMaquina.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Security\HashService.cs" />
|
||||
<Compile Include="Security\HwidService.cs" />
|
||||
<Compile Include="Security\KeyManager.cs" />
|
||||
<Compile Include="Security\LicenseEngine.cs" />
|
||||
<Compile Include="Security\LicenseKeyGenerator.cs" />
|
||||
<Compile Include="Security\LicensePayload.cs" />
|
||||
<Compile Include="Security\RsaService.cs" />
|
||||
<EmbeddedResource Include="Forms\FrmGerarLicencaKey.resx">
|
||||
<DependentUpon>FrmGerarLicencaKey.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Forms\FrmPrincipal.resx">
|
||||
<DependentUpon>FrmPrincipal.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Utils\" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets" Condition="Exists('packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets')" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Este projeto faz referência a pacotes do NuGet que não estão presentes neste computador. Use a Restauração de Pacotes do NuGet para baixá-los. Para obter mais informações, consulte http://go.microsoft.com/fwlink/?LinkID=322105. O arquivo ausente é {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets')" Text="$([System.String]::Format('$(ErrorText)', 'packages\System.ValueTuple.4.6.1\build\net471\System.ValueTuple.targets'))" />
|
||||
</Target>
|
||||
</Project>
|
||||
25
Levelcode-licence.sln
Normal file
25
Levelcode-licence.sln
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.14.36616.10 d17.14
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Levelcode-licence", "Levelcode-licence.csproj", "{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AADCCAC5-1C0E-492D-B260-4A7BEAFEFC85}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {AA995D4A-DCAE-4B29-982C-1B5482C96BE1}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
12
Models/Enums/ModuloSistemaEnum.cs
Normal file
12
Models/Enums/ModuloSistemaEnum.cs
Normal file
@ -0,0 +1,12 @@
|
||||
namespace LevelCode.License.Models.Enums
|
||||
{
|
||||
public enum ModuloSistemaEnum
|
||||
{
|
||||
Vendas,
|
||||
Estoque,
|
||||
Financeiro,
|
||||
Relatorios,
|
||||
Usuarios,
|
||||
Todos
|
||||
}
|
||||
}
|
||||
10
Models/Enums/StatusLicencaEnum.cs
Normal file
10
Models/Enums/StatusLicencaEnum.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace LevelCode.License.Models.Enums
|
||||
{
|
||||
public enum StatusLicencaEnum
|
||||
{
|
||||
Inativa = 0,
|
||||
Ativa = 1,
|
||||
Bloqueada = 2,
|
||||
Expirada = 3
|
||||
}
|
||||
}
|
||||
9
Models/Enums/StatusMaquinaEnum.cs
Normal file
9
Models/Enums/StatusMaquinaEnum.cs
Normal file
@ -0,0 +1,9 @@
|
||||
namespace LevelCode.License.Models.Enums
|
||||
{
|
||||
public enum StatusMaquinaEnum
|
||||
{
|
||||
Bloqueada = 0,
|
||||
Ativa = 1,
|
||||
Revogada = 2
|
||||
}
|
||||
}
|
||||
10
Models/Enums/TipoLicencaEnum.cs
Normal file
10
Models/Enums/TipoLicencaEnum.cs
Normal file
@ -0,0 +1,10 @@
|
||||
namespace LevelCode.License.Models.Enums
|
||||
{
|
||||
public enum TipoLicencaEnum
|
||||
{
|
||||
Trial = 1,
|
||||
Mensal = 2,
|
||||
Anual = 3,
|
||||
Vitalicia = 4
|
||||
}
|
||||
}
|
||||
28
Models/ModeloLicenca.cs
Normal file
28
Models/ModeloLicenca.cs
Normal file
@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace LevelCode.License.Models
|
||||
{
|
||||
public class ModeloLicenca
|
||||
{
|
||||
public int IdLicenca { get; set; }
|
||||
public string LicenseKey { get; set; }
|
||||
|
||||
public string Cliente { get; set; }
|
||||
public string TipoLicenca { get; set; }
|
||||
public int CodigoTipoLicenca { get; set; }
|
||||
|
||||
public DateTime? ExpiraEm { get; set; }
|
||||
public int LimiteMaquinas { get; set; }
|
||||
|
||||
// 🔴 Campo que vai para o banco (JSON)
|
||||
public string Modulos { get; set; }
|
||||
public DateTime? UltimaSincronizacao { get; set; }
|
||||
|
||||
// 🟢 Campo de uso interno
|
||||
public List<string> ModulosLista { get; set; } = new List<string>();
|
||||
|
||||
public int Status { get; set; }
|
||||
public DateTime DataCriacao { get; set; }
|
||||
}
|
||||
}
|
||||
20
Models/ModeloLicencaLog.cs
Normal file
20
Models/ModeloLicencaLog.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace LevelCode.License.Models
|
||||
{
|
||||
public class ModeloLicencaLog
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int? LicencaId { get; set; }
|
||||
public string Acao { get; set; }
|
||||
public DateTime DataHora { get; set; }
|
||||
public string IpCliente { get; set; }
|
||||
public string Detalhes { get; set; }
|
||||
public string HWID_Hash { get; set; }
|
||||
|
||||
public ModeloLicencaLog()
|
||||
{
|
||||
DataHora = DateTime.Now;
|
||||
}
|
||||
}
|
||||
}
|
||||
23
Models/ModeloLicencaMaquina.cs
Normal file
23
Models/ModeloLicencaMaquina.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using System;
|
||||
|
||||
namespace LevelCode.License.Models
|
||||
{
|
||||
public class ModeloLicencaMaquina
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int LicencaId { get; set; }
|
||||
public string HWID { get; set; }
|
||||
public string HWID_Hash { get; set; }
|
||||
public DateTime PrimeiroUso { get; set; }
|
||||
public DateTime UltimoUso { get; set; }
|
||||
public DateTime? DataAtivacao { get; set; }
|
||||
public int Status { get; set; }
|
||||
|
||||
public ModeloLicencaMaquina()
|
||||
{
|
||||
PrimeiroUso = DateTime.Now;
|
||||
UltimoUso = DateTime.Now;
|
||||
Status = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
22
Program.cs
Normal file
22
Program.cs
Normal file
@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Levelcode_licence
|
||||
{
|
||||
internal static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// Ponto de entrada principal para o aplicativo.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new FrmPrincipal());
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Properties/AssemblyInfo.cs
Normal file
33
Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,33 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// As informações gerais sobre um assembly são controladas por
|
||||
// conjunto de atributos. Altere estes valores de atributo para modificar as informações
|
||||
// associadas a um assembly.
|
||||
[assembly: AssemblyTitle("Levelcode-licence")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Levelcode-licence")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2025")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Definir ComVisible como false torna os tipos neste assembly invisíveis
|
||||
// para componentes COM. Caso precise acessar um tipo neste assembly de
|
||||
// COM, defina o atributo ComVisible como true nesse tipo.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// O GUID a seguir será destinado à ID de typelib se este projeto for exposto para COM
|
||||
[assembly: Guid("aadccac5-1c0e-492d-b260-4a7beafefc85")]
|
||||
|
||||
// As informações da versão de um assembly consistem nos quatro valores a seguir:
|
||||
//
|
||||
// Versão Principal
|
||||
// Versão Secundária
|
||||
// Número da Versão
|
||||
// Revisão
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
71
Properties/Resources.Designer.cs
generated
Normal file
71
Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,71 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Este código foi gerado por uma ferramenta.
|
||||
// Versão de Tempo de Execução: 4.0.30319.42000
|
||||
//
|
||||
// As alterações ao arquivo poderão causar comportamento incorreto e serão perdidas se
|
||||
// o código for recriado
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Levelcode_licence.Properties
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Uma classe de recurso fortemente tipados, para pesquisar cadeias de caracteres localizadas etc.
|
||||
/// </summary>
|
||||
// Esta classe foi gerada automaticamente pela StronglyTypedResourceBuilder
|
||||
// classe através de uma ferramenta como ResGen ou Visual Studio.
|
||||
// Para adicionar ou remover um associado, edite o arquivo .ResX e execute ResGen novamente
|
||||
// com a opção /str ou reconstrua seu projeto VS.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources
|
||||
{
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Retorna a instância cacheada de ResourceManager utilizada por esta classe.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager
|
||||
{
|
||||
get
|
||||
{
|
||||
if ((resourceMan == null))
|
||||
{
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Levelcode_licence.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Substitui a propriedade CurrentUICulture do thread atual para todas
|
||||
/// as pesquisas de recursos que usam esta classe de recursos fortemente tipados.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture
|
||||
{
|
||||
get
|
||||
{
|
||||
return resourceCulture;
|
||||
}
|
||||
set
|
||||
{
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
117
Properties/Resources.resx
Normal file
117
Properties/Resources.resx
Normal file
@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
30
Properties/Settings.Designer.cs
generated
Normal file
30
Properties/Settings.Designer.cs
generated
Normal file
@ -0,0 +1,30 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Levelcode_licence.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
7
Properties/Settings.settings
Normal file
7
Properties/Settings.settings
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
54
Security/HashService.cs
Normal file
54
Security/HashService.cs
Normal file
@ -0,0 +1,54 @@
|
||||
using System;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class HashService
|
||||
{
|
||||
// =========================
|
||||
// SHA-256 (string)
|
||||
// =========================
|
||||
public static string GerarSha256(string valor)
|
||||
{
|
||||
if (string.IsNullOrEmpty(valor))
|
||||
return null;
|
||||
|
||||
using (SHA256 sha = SHA256.Create())
|
||||
{
|
||||
byte[] bytes = Encoding.UTF8.GetBytes(valor);
|
||||
byte[] hash = sha.ComputeHash(bytes);
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < hash.Length; i++)
|
||||
{
|
||||
sb.Append(hash[i].ToString("x2"));
|
||||
}
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
// =========================
|
||||
// SHA-256 (byte[])
|
||||
// =========================
|
||||
public static string GerarSha256(byte[] dados)
|
||||
{
|
||||
if (dados == null || dados.Length == 0)
|
||||
return null;
|
||||
|
||||
using (SHA256 sha = SHA256.Create())
|
||||
{
|
||||
byte[] hash = sha.ComputeHash(dados);
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < hash.Length; i++)
|
||||
{
|
||||
sb.Append(hash[i].ToString("x2"));
|
||||
}
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
75
Security/HwidService.cs
Normal file
75
Security/HwidService.cs
Normal file
@ -0,0 +1,75 @@
|
||||
using System;
|
||||
using System.Management;
|
||||
using System.Text;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class HwidService
|
||||
{
|
||||
// =========================
|
||||
// GERAR HWID BRUTO
|
||||
// =========================
|
||||
public static string GerarHwid()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
try
|
||||
{
|
||||
sb.Append(GetCpuId());
|
||||
sb.Append("|");
|
||||
sb.Append(GetDiskSerial());
|
||||
sb.Append("|");
|
||||
sb.Append(Environment.MachineName);
|
||||
}
|
||||
catch
|
||||
{
|
||||
sb.Append(Environment.MachineName);
|
||||
}
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// CPU ID
|
||||
// =========================
|
||||
private static string GetCpuId()
|
||||
{
|
||||
try
|
||||
{
|
||||
using (ManagementObjectSearcher searcher =
|
||||
new ManagementObjectSearcher("SELECT ProcessorId FROM Win32_Processor"))
|
||||
{
|
||||
foreach (ManagementObject obj in searcher.Get())
|
||||
{
|
||||
return obj["ProcessorId"]?.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
|
||||
return "CPU_UNKNOWN";
|
||||
}
|
||||
|
||||
// =========================
|
||||
// DISK SERIAL
|
||||
// =========================
|
||||
private static string GetDiskSerial()
|
||||
{
|
||||
try
|
||||
{
|
||||
using (ManagementObjectSearcher searcher =
|
||||
new ManagementObjectSearcher("SELECT SerialNumber FROM Win32_PhysicalMedia"))
|
||||
{
|
||||
foreach (ManagementObject obj in searcher.Get())
|
||||
{
|
||||
if (obj["SerialNumber"] != null)
|
||||
return obj["SerialNumber"].ToString().Trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
|
||||
return "DISK_UNKNOWN";
|
||||
}
|
||||
}
|
||||
}
|
||||
54
Security/KeyManager.cs
Normal file
54
Security/KeyManager.cs
Normal file
@ -0,0 +1,54 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class KeyManager
|
||||
{
|
||||
private static readonly string PastaKeys =
|
||||
@"C:\LevelCode\Levelcode-license";
|
||||
|
||||
private static readonly string CaminhoPrivateKey =
|
||||
Path.Combine(PastaKeys, "private.key");
|
||||
|
||||
private static readonly string CaminhoPublicKey =
|
||||
Path.Combine(PastaKeys, "public.key");
|
||||
|
||||
// =========================
|
||||
// GARANTIR QUE AS CHAVES EXISTEM
|
||||
// =========================
|
||||
public static void GarantirChaves()
|
||||
{
|
||||
if (File.Exists(CaminhoPrivateKey) &&
|
||||
File.Exists(CaminhoPublicKey))
|
||||
return;
|
||||
|
||||
Directory.CreateDirectory(PastaKeys);
|
||||
|
||||
string chavePublica;
|
||||
string chavePrivada;
|
||||
|
||||
RsaService.GerarParDeChaves(
|
||||
out chavePublica,
|
||||
out chavePrivada);
|
||||
|
||||
File.WriteAllText(CaminhoPrivateKey, chavePrivada);
|
||||
File.WriteAllText(CaminhoPublicKey, chavePublica);
|
||||
}
|
||||
|
||||
// =========================
|
||||
// OBTER CHAVES
|
||||
// =========================
|
||||
public static string ObterChavePrivada()
|
||||
{
|
||||
GarantirChaves();
|
||||
return File.ReadAllText(CaminhoPrivateKey);
|
||||
}
|
||||
|
||||
public static string ObterChavePublica()
|
||||
{
|
||||
GarantirChaves();
|
||||
return File.ReadAllText(CaminhoPublicKey);
|
||||
}
|
||||
}
|
||||
}
|
||||
50
Security/LicenseEngine.cs
Normal file
50
Security/LicenseEngine.cs
Normal file
@ -0,0 +1,50 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class LicenseEngine
|
||||
{
|
||||
// =========================
|
||||
// GERAR ARQUIVO .KEY
|
||||
// =========================
|
||||
public static void GerarArquivoKey(
|
||||
LicensePayload payload,
|
||||
string chavePrivada,
|
||||
string caminhoArquivo)
|
||||
{
|
||||
if (payload == null)
|
||||
throw new ArgumentNullException(nameof(payload));
|
||||
|
||||
if (string.IsNullOrWhiteSpace(chavePrivada))
|
||||
throw new ArgumentException("Chave privada inválida.");
|
||||
|
||||
// 1️⃣ Serializa payload (somente dados)
|
||||
string json = JsonSerializer.Serialize(payload);
|
||||
byte[] dados = Encoding.UTF8.GetBytes(json);
|
||||
|
||||
// 2️⃣ Assina os dados
|
||||
byte[] assinatura;
|
||||
using (RSA rsa = RSA.Create())
|
||||
{
|
||||
rsa.FromXmlString(chavePrivada);
|
||||
assinatura = rsa.SignData(
|
||||
dados,
|
||||
HashAlgorithmName.SHA256,
|
||||
RSASignaturePadding.Pkcs1);
|
||||
}
|
||||
|
||||
// 3️⃣ Monta o arquivo .key
|
||||
string conteudoFinal =
|
||||
Convert.ToBase64String(dados) +
|
||||
"|SIGN|" +
|
||||
Convert.ToBase64String(assinatura);
|
||||
|
||||
// 4️⃣ Salva o arquivo
|
||||
File.WriteAllText(caminhoArquivo, conteudoFinal, Encoding.UTF8);
|
||||
}
|
||||
}
|
||||
}
|
||||
20
Security/LicenseKeyGenerator.cs
Normal file
20
Security/LicenseKeyGenerator.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class LicenseKeyGenerator
|
||||
{
|
||||
public static string Gerar()
|
||||
{
|
||||
return $"LVL-{Bloco()}-{Bloco()}-{Bloco()}";
|
||||
}
|
||||
|
||||
private static string Bloco()
|
||||
{
|
||||
return Guid.NewGuid()
|
||||
.ToString("N")
|
||||
.Substring(0, 4)
|
||||
.ToUpper();
|
||||
}
|
||||
}
|
||||
}
|
||||
27
Security/LicensePayload.cs
Normal file
27
Security/LicensePayload.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
[Serializable]
|
||||
public class LicensePayload
|
||||
{
|
||||
// 🔑 ESSENCIAL – ligação com o banco
|
||||
public string Key { get; set; } // LicenseKey do banco
|
||||
public int LicencaId { get; set; }
|
||||
|
||||
// Cliente
|
||||
public string Cliente { get; set; }
|
||||
|
||||
// Tipo / validade
|
||||
public int CodigoTipoLicenca { get; set; }
|
||||
public DateTime? ExpiraEm { get; set; }
|
||||
|
||||
// Regras
|
||||
public int LimiteMaquinas { get; set; }
|
||||
public List<string> Modulos { get; set; } = new List<string>();
|
||||
|
||||
// Auditoria (opcional)
|
||||
public DateTime DataGeracao { get; set; } = DateTime.Now;
|
||||
}
|
||||
}
|
||||
69
Security/RsaService.cs
Normal file
69
Security/RsaService.cs
Normal file
@ -0,0 +1,69 @@
|
||||
using System;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
|
||||
namespace LevelCode.License.Security
|
||||
{
|
||||
public static class RsaService
|
||||
{
|
||||
// =========================
|
||||
// GERAR PAR DE CHAVES
|
||||
// =========================
|
||||
public static void GerarParDeChaves(
|
||||
out string chavePublica,
|
||||
out string chavePrivada,
|
||||
int tamanho = 2048)
|
||||
{
|
||||
using (var rsa = new RSACryptoServiceProvider(tamanho))
|
||||
{
|
||||
chavePublica = rsa.ToXmlString(false); // public key
|
||||
chavePrivada = rsa.ToXmlString(true); // private key
|
||||
}
|
||||
}
|
||||
|
||||
// =========================
|
||||
// ASSINAR TEXTO (PRIVATE KEY)
|
||||
// =========================
|
||||
public static string Assinar(string texto, string chavePrivada)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(texto))
|
||||
throw new ArgumentException("Texto inválido para assinatura.");
|
||||
|
||||
using (var rsa = new RSACryptoServiceProvider())
|
||||
{
|
||||
rsa.FromXmlString(chavePrivada);
|
||||
|
||||
byte[] dados = Encoding.UTF8.GetBytes(texto);
|
||||
byte[] assinatura = rsa.SignData(dados, CryptoConfig.MapNameToOID("SHA256"));
|
||||
|
||||
return Convert.ToBase64String(assinatura);
|
||||
}
|
||||
}
|
||||
|
||||
// =========================
|
||||
// VALIDAR ASSINATURA (PUBLIC KEY)
|
||||
// =========================
|
||||
public static bool ValidarAssinatura(
|
||||
string texto,
|
||||
string assinaturaBase64,
|
||||
string chavePublica)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(texto) ||
|
||||
string.IsNullOrWhiteSpace(assinaturaBase64))
|
||||
return false;
|
||||
|
||||
using (var rsa = new RSACryptoServiceProvider())
|
||||
{
|
||||
rsa.FromXmlString(chavePublica);
|
||||
|
||||
byte[] dados = Encoding.UTF8.GetBytes(texto);
|
||||
byte[] assinatura = Convert.FromBase64String(assinaturaBase64);
|
||||
|
||||
return rsa.VerifyData(
|
||||
dados,
|
||||
CryptoConfig.MapNameToOID("SHA256"),
|
||||
assinatura);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
bin/Debug/Levelcode-licence.exe
Normal file
BIN
bin/Debug/Levelcode-licence.exe
Normal file
Binary file not shown.
17
bin/Debug/Levelcode-licence.exe.config
Normal file
17
bin/Debug/Levelcode-licence.exe.config
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
|
||||
<connectionStrings>
|
||||
<add name="SQL"
|
||||
connectionString="Data Source=206.42.13.180;Initial Catalog=Levelcode-ModasMVP;User ID=nicolas;Password=Nike12122020*##;" />
|
||||
</connectionStrings>
|
||||
<appSettings>
|
||||
<add key="PrivateKeyPath" value="C:\LevelCode\Levelcode-license\private.key"/>
|
||||
</appSettings>
|
||||
|
||||
|
||||
</configuration>
|
||||
BIN
bin/Debug/Levelcode-licence.pdb
Normal file
BIN
bin/Debug/Levelcode-licence.pdb
Normal file
Binary file not shown.
BIN
bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll
Normal file
BIN
bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll
Normal file
Binary file not shown.
420
bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
Normal file
420
bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
Normal file
@ -0,0 +1,420 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>Microsoft.Bcl.AsyncInterfaces</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1">
|
||||
<summary>Provides the core logic for implementing a manual-reset <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/> or <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
<typeparam name="TResult"></typeparam>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuation">
|
||||
<summary>
|
||||
The callback to invoke when the operation completes if <see cref="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)"/> was called before the operation completed,
|
||||
or <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCoreShared.s_sentinel"/> if the operation completed before a callback was supplied,
|
||||
or null if a callback hasn't yet been provided and the operation hasn't yet completed.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuationState">
|
||||
<summary>State to pass to <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuation"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._executionContext">
|
||||
<summary><see cref="T:System.Threading.ExecutionContext"/> to flow to the callback, or null if no flowing is required.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._capturedContext">
|
||||
<summary>
|
||||
A "captured" <see cref="T:System.Threading.SynchronizationContext"/> or <see cref="T:System.Threading.Tasks.TaskScheduler"/> with which to invoke the callback,
|
||||
or null if no special context is required.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._completed">
|
||||
<summary>Whether the current operation has completed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._result">
|
||||
<summary>The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._error">
|
||||
<summary>The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._version">
|
||||
<summary>The current version of this value, used to help prevent misuse.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.RunContinuationsAsynchronously">
|
||||
<summary>Gets or sets whether to force continuations to run asynchronously.</summary>
|
||||
<remarks>Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.Reset">
|
||||
<summary>Resets to prepare for the next operation.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SetResult(`0)">
|
||||
<summary>Completes with a successful result.</summary>
|
||||
<param name="result">The result.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SetException(System.Exception)">
|
||||
<summary>Complets with an error.</summary>
|
||||
<param name="error"></param>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.Version">
|
||||
<summary>Gets the operation version.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.GetStatus(System.Int16)">
|
||||
<summary>Gets the status of the operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.GetResult(System.Int16)">
|
||||
<summary>Gets the result of the operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)">
|
||||
<summary>Schedules the continuation action for this operation.</summary>
|
||||
<param name="continuation">The continuation to invoke when the operation has completed.</param>
|
||||
<param name="state">The state object to pass to <paramref name="continuation"/> when it's invoked.</param>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
<param name="flags">The flags describing the behavior of the continuation.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.ValidateToken(System.Int16)">
|
||||
<summary>Ensures that the specified token matches the current version.</summary>
|
||||
<param name="token">The token supplied by <see cref="T:System.Threading.Tasks.ValueTask"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SignalCompletion">
|
||||
<summary>Signals that the operation has completed. Invoked after the result or error has been set.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.InvokeContinuation">
|
||||
<summary>
|
||||
Invokes the continuation with the appropriate captured context / scheduler.
|
||||
This assumes that if <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._executionContext"/> is not null we're already
|
||||
running within that <see cref="T:System.Threading.ExecutionContext"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.TaskAsyncEnumerableExtensions">
|
||||
<summary>Provides a set of static methods for configuring <see cref="T:System.Threading.Tasks.Task"/>-related behaviors on asynchronous enumerables and disposables.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.ConfigureAwait(System.IAsyncDisposable,System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async disposable will be performed.</summary>
|
||||
<param name="source">The source async disposable.</param>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured async disposable.</returns>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.ConfigureAwait``1(System.Collections.Generic.IAsyncEnumerable{``0},System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async iteration will be performed.</summary>
|
||||
<typeparam name="T">The type of the objects being iterated.</typeparam>
|
||||
<param name="source">The source enumerable being iterated.</param>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.WithCancellation``1(System.Collections.Generic.IAsyncEnumerable{``0},System.Threading.CancellationToken)">
|
||||
<summary>Sets the <see cref="T:System.Threading.CancellationToken"/> to be passed to <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)"/> when iterating.</summary>
|
||||
<typeparam name="T">The type of the objects being iterated.</typeparam>
|
||||
<param name="source">The source enumerable being iterated.</param>
|
||||
<param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder">
|
||||
<summary>Represents a builder for asynchronous iterators.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.Create">
|
||||
<summary>Creates an instance of the <see cref="T:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder"/> struct.</summary>
|
||||
<returns>The initialized instance.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.MoveNext``1(``0@)">
|
||||
<summary>Invokes <see cref="M:System.Runtime.CompilerServices.IAsyncStateMachine.MoveNext"/> on the state machine while guarding the <see cref="T:System.Threading.ExecutionContext"/>.</summary>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="stateMachine">The state machine instance, passed by reference.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.AwaitOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.AwaitUnsafeOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.Complete">
|
||||
<summary>Marks iteration as being completed, whether successfully or otherwise.</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.ObjectIdForDebugger">
|
||||
<summary>Gets an object that may be used to uniquely identify this builder to the debugger.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute">
|
||||
<summary>Indicates whether a method is an asynchronous iterator.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute.#ctor(System.Type)">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute"/> class.</summary>
|
||||
<param name="stateMachineType">The type object for the underlying state machine type that's used to implement a state machine method.</param>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredAsyncDisposable">
|
||||
<summary>Provides a type that can be used to configure how awaits on an <see cref="T:System.IAsyncDisposable"/> are performed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredAsyncDisposable.DisposeAsync">
|
||||
<summary>Asynchronously releases the unmanaged resources used by the <see cref="T:System.Runtime.CompilerServices.ConfiguredAsyncDisposable" />.</summary>
|
||||
<returns>A task that represents the asynchronous dispose operation.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1">
|
||||
<summary>Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.ConfigureAwait(System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async iteration will be performed.</summary>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
<remarks>This will replace any previous value set by <see cref="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.ConfigureAwait(System.Boolean)"/> for this iteration.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.WithCancellation(System.Threading.CancellationToken)">
|
||||
<summary>Sets the <see cref="T:System.Threading.CancellationToken"/> to be passed to <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)"/> when iterating.</summary>
|
||||
<param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
<remarks>This will replace any previous <see cref="T:System.Threading.CancellationToken"/> set by <see cref="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.WithCancellation(System.Threading.CancellationToken)"/> for this iteration.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.GetAsyncEnumerator">
|
||||
<summary>Returns an enumerator that iterates asynchronously through collections that enables cancelable iteration and configured awaits.</summary>
|
||||
<returns>An enumerator for the <see cref="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1" /> class.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator">
|
||||
<summary>Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.MoveNextAsync">
|
||||
<summary>Advances the enumerator asynchronously to the next element of the collection.</summary>
|
||||
<returns>
|
||||
A <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/> that will complete with a result of <c>true</c>
|
||||
if the enumerator was successfully advanced to the next element, or <c>false</c> if the enumerator has
|
||||
passed the end of the collection.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.Current">
|
||||
<summary>Gets the element in the collection at the current position of the enumerator.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.DisposeAsync">
|
||||
<summary>
|
||||
Performs application-defined tasks associated with freeing, releasing, or
|
||||
resetting unmanaged resources asynchronously.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.EnumeratorCancellationAttribute">
|
||||
<summary>Allows users of async-enumerable methods to mark the parameter that should receive the cancellation token value from <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)" />.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.EnumeratorCancellationAttribute.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.EnumeratorCancellationAttribute" /> class.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.InteropServices.LibraryImportAttribute">
|
||||
<summary>
|
||||
Attribute used to indicate a source generator should create a function for marshalling
|
||||
arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
|
||||
</summary>
|
||||
<remarks>
|
||||
This attribute is meaningless if the source generator associated with it is not enabled.
|
||||
The current built-in source generator only supports C# and only supplies an implementation when
|
||||
applied to static, partial, non-generic methods.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.InteropServices.LibraryImportAttribute.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.LibraryImportAttribute"/>.
|
||||
</summary>
|
||||
<param name="libraryName">Name of the library containing the import.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.LibraryName">
|
||||
<summary>
|
||||
Gets the name of the library containing the import.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.EntryPoint">
|
||||
<summary>
|
||||
Gets or sets the name of the entry point to be called.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshalling">
|
||||
<summary>
|
||||
Gets or sets how to marshal string arguments to the method.
|
||||
</summary>
|
||||
<remarks>
|
||||
If this field is set to a value other than <see cref="F:System.Runtime.InteropServices.StringMarshalling.Custom" />,
|
||||
<see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType" /> must not be specified.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType">
|
||||
<summary>
|
||||
Gets or sets the <see cref="T:System.Type"/> used to control how string arguments to the method are marshalled.
|
||||
</summary>
|
||||
<remarks>
|
||||
If this field is specified, <see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshalling" /> must not be specified
|
||||
or must be set to <see cref="F:System.Runtime.InteropServices.StringMarshalling.Custom" />.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.SetLastError">
|
||||
<summary>
|
||||
Gets or sets whether the callee sets an error (SetLastError on Windows or errno
|
||||
on other platforms) before returning from the attributed method.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.InteropServices.StringMarshalling">
|
||||
<summary>
|
||||
Specifies how strings should be marshalled for generated p/invokes
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Custom">
|
||||
<summary>
|
||||
Indicates the user is supplying a specific marshaller in <see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Utf8">
|
||||
<summary>
|
||||
Use the platform-provided UTF-8 marshaller.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Utf16">
|
||||
<summary>
|
||||
Use the platform-provided UTF-16 marshaller.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Collections.Generic.IAsyncEnumerable`1">
|
||||
<summary>Exposes an enumerator that provides asynchronous iteration over values of a specified type.</summary>
|
||||
<typeparam name="T">The type of values to enumerate.</typeparam>
|
||||
</member>
|
||||
<member name="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)">
|
||||
<summary>Returns an enumerator that iterates asynchronously through the collection.</summary>
|
||||
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken"/> that may be used to cancel the asynchronous iteration.</param>
|
||||
<returns>An enumerator that can be used to iterate asynchronously through the collection.</returns>
|
||||
</member>
|
||||
<member name="T:System.Collections.Generic.IAsyncEnumerator`1">
|
||||
<summary>Supports a simple asynchronous iteration over a generic collection.</summary>
|
||||
<typeparam name="T">The type of objects to enumerate.</typeparam>
|
||||
</member>
|
||||
<member name="M:System.Collections.Generic.IAsyncEnumerator`1.MoveNextAsync">
|
||||
<summary>Advances the enumerator asynchronously to the next element of the collection.</summary>
|
||||
<returns>
|
||||
A <see cref="T:System.Threading.Tasks.ValueTask`1"/> that will complete with a result of <c>true</c> if the enumerator
|
||||
was successfully advanced to the next element, or <c>false</c> if the enumerator has passed the end
|
||||
of the collection.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:System.Collections.Generic.IAsyncEnumerator`1.Current">
|
||||
<summary>Gets the element in the collection at the current position of the enumerator.</summary>
|
||||
</member>
|
||||
<member name="T:System.IAsyncDisposable">
|
||||
<summary>Provides a mechanism for releasing unmanaged resources asynchronously.</summary>
|
||||
</member>
|
||||
<member name="M:System.IAsyncDisposable.DisposeAsync">
|
||||
<summary>
|
||||
Performs application-defined tasks associated with freeing, releasing, or
|
||||
resetting unmanaged resources asynchronously.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute">
|
||||
<summary>Specifies that null is allowed as an input even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
|
||||
<summary>Specifies that null is disallowed as an input even if the corresponding type allows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
|
||||
<summary>Specifies that an output may be null even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
|
||||
<summary>Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
|
||||
<summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>, the parameter may be null even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified return value condition.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated parameter may be null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
|
||||
<summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, the parameter will not be null even if the corresponding type allows it.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified return value condition.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated parameter will not be null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
|
||||
<summary>Specifies that the output will be non-null if the named parameter is non-null.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
|
||||
<summary>Initializes the attribute with the associated parameter name.</summary>
|
||||
<param name="parameterName">
|
||||
The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
|
||||
<summary>Gets the associated parameter name.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
|
||||
<summary>Applied to a method that will never return under any circumstance.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
|
||||
<summary>Specifies that the method will not return if the associated Boolean parameter is passed the specified value.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified parameter value.</summary>
|
||||
<param name="parameterValue">
|
||||
The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
|
||||
the associated parameter matches this value.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
|
||||
<summary>Gets the condition parameter value.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
|
||||
<summary>Specifies that the method or property will ensure that the listed field and property members have not-null values.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
|
||||
<summary>Initializes the attribute with a field or property member.</summary>
|
||||
<param name="member">
|
||||
The field or property member that is promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
|
||||
<summary>Initializes the attribute with the list of field and property members.</summary>
|
||||
<param name="members">
|
||||
The list of field and property members that are promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
|
||||
<summary>Gets field or property member names.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
|
||||
<summary>Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
|
||||
<summary>Initializes the attribute with the specified return value condition and a field or property member.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated field or property member will not be null.
|
||||
</param>
|
||||
<param name="member">
|
||||
The field or property member that is promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
|
||||
<summary>Initializes the attribute with the specified return value condition and list of field and property members.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated field and property members will not be null.
|
||||
</param>
|
||||
<param name="members">
|
||||
The list of field and property members that are promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
|
||||
<summary>Gets field or property member names.</summary>
|
||||
</member>
|
||||
<member name="T:System.ExceptionPolyfills">
|
||||
<summary>Provides downlevel polyfills for static methods on Exception-derived types.</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
bin/Debug/System.Buffers.dll
Normal file
BIN
bin/Debug/System.Buffers.dll
Normal file
Binary file not shown.
173
bin/Debug/System.Buffers.xml
Normal file
173
bin/Debug/System.Buffers.xml
Normal file
@ -0,0 +1,173 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>System.Buffers</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Buffers.ArrayPool`1">
|
||||
<summary>
|
||||
Provides a resource pool that enables reusing instances of type <see cref="T:T[]"/>.
|
||||
</summary>
|
||||
<remarks>
|
||||
<para>
|
||||
Renting and returning buffers with an <see cref="T:System.Buffers.ArrayPool`1"/> can increase performance
|
||||
in situations where arrays are created and destroyed frequently, resulting in significant
|
||||
memory pressure on the garbage collector.
|
||||
</para>
|
||||
<para>
|
||||
This class is thread-safe. All members may be used by multiple threads concurrently.
|
||||
</para>
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="F:System.Buffers.ArrayPool`1.s_sharedInstance">
|
||||
<summary>The lazily-initialized shared pool instance.</summary>
|
||||
</member>
|
||||
<member name="P:System.Buffers.ArrayPool`1.Shared">
|
||||
<summary>
|
||||
Retrieves a shared <see cref="T:System.Buffers.ArrayPool`1"/> instance.
|
||||
</summary>
|
||||
<remarks>
|
||||
The shared pool provides a default implementation of <see cref="T:System.Buffers.ArrayPool`1"/>
|
||||
that's intended for general applicability. It maintains arrays of multiple sizes, and
|
||||
may hand back a larger array than was actually requested, but will never hand back a smaller
|
||||
array than was requested. Renting a buffer from it with <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/> will result in an
|
||||
existing buffer being taken from the pool if an appropriate buffer is available or in a new
|
||||
buffer being allocated if one is not available.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPool`1.EnsureSharedCreated">
|
||||
<summary>Ensures that <see cref="F:System.Buffers.ArrayPool`1.s_sharedInstance"/> has been initialized to a pool and returns it.</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPool`1.Create">
|
||||
<summary>
|
||||
Creates a new <see cref="T:System.Buffers.ArrayPool`1"/> instance using default configuration options.
|
||||
</summary>
|
||||
<returns>A new <see cref="T:System.Buffers.ArrayPool`1"/> instance.</returns>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPool`1.Create(System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:System.Buffers.ArrayPool`1"/> instance using custom configuration options.
|
||||
</summary>
|
||||
<param name="maxArrayLength">The maximum length of array instances that may be stored in the pool.</param>
|
||||
<param name="maxArraysPerBucket">
|
||||
The maximum number of array instances that may be stored in each bucket in the pool. The pool
|
||||
groups arrays of similar lengths into buckets for faster access.
|
||||
</param>
|
||||
<returns>A new <see cref="T:System.Buffers.ArrayPool`1"/> instance with the specified configuration options.</returns>
|
||||
<remarks>
|
||||
The created pool will group arrays into buckets, with no more than <paramref name="maxArraysPerBucket"/>
|
||||
in each bucket and with those arrays not exceeding <paramref name="maxArrayLength"/> in length.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPool`1.Rent(System.Int32)">
|
||||
<summary>
|
||||
Retrieves a buffer that is at least the requested length.
|
||||
</summary>
|
||||
<param name="minimumLength">The minimum length of the array needed.</param>
|
||||
<returns>
|
||||
An <see cref="T:T[]"/> that is at least <paramref name="minimumLength"/> in length.
|
||||
</returns>
|
||||
<remarks>
|
||||
This buffer is loaned to the caller and should be returned to the same pool via
|
||||
<see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"/> so that it may be reused in subsequent usage of <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/>.
|
||||
It is not a fatal error to not return a rented buffer, but failure to do so may lead to
|
||||
decreased application performance, as the pool may need to create a new buffer to replace
|
||||
the one lost.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)">
|
||||
<summary>
|
||||
Returns to the pool an array that was previously obtained via <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/> on the same
|
||||
<see cref="T:System.Buffers.ArrayPool`1"/> instance.
|
||||
</summary>
|
||||
<param name="array">
|
||||
The buffer previously obtained from <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/> to return to the pool.
|
||||
</param>
|
||||
<param name="clearArray">
|
||||
If <c>true</c> and if the pool will store the buffer to enable subsequent reuse, <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"/>
|
||||
will clear <paramref name="array"/> of its contents so that a subsequent consumer via <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/>
|
||||
will not see the previous consumer's content. If <c>false</c> or if the pool will release the buffer,
|
||||
the array's contents are left unchanged.
|
||||
</param>
|
||||
<remarks>
|
||||
Once a buffer has been returned to the pool, the caller gives up all ownership of the buffer
|
||||
and must not use it. The reference returned from a given call to <see cref="M:System.Buffers.ArrayPool`1.Rent(System.Int32)"/> must only be
|
||||
returned via <see cref="M:System.Buffers.ArrayPool`1.Return(`0[],System.Boolean)"/> once. The default <see cref="T:System.Buffers.ArrayPool`1"/>
|
||||
may hold onto the returned buffer in order to rent it again, or it may release the returned buffer
|
||||
if it's determined that the pool already has enough buffers stored.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="T:System.Buffers.ArrayPoolEventSource.BufferAllocatedReason">
|
||||
<summary>The reason for a BufferAllocated event.</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.ArrayPoolEventSource.BufferAllocatedReason.Pooled">
|
||||
<summary>The pool is allocating a buffer to be pooled in a bucket.</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.ArrayPoolEventSource.BufferAllocatedReason.OverMaximumSize">
|
||||
<summary>The requested buffer size was too large to be pooled.</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.ArrayPoolEventSource.BufferAllocatedReason.PoolExhausted">
|
||||
<summary>The pool has already allocated for pooling as many buffers of a particular size as it's allowed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPoolEventSource.BufferRented(System.Int32,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Event for when a buffer is rented. This is invoked once for every successful call to Rent,
|
||||
regardless of whether a buffer is allocated or a buffer is taken from the pool. In a
|
||||
perfect situation where all rented buffers are returned, we expect to see the number
|
||||
of BufferRented events exactly match the number of BuferReturned events, with the number
|
||||
of BufferAllocated events being less than or equal to those numbers (ideally significantly
|
||||
less than).
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPoolEventSource.BufferAllocated(System.Int32,System.Int32,System.Int32,System.Int32,System.Buffers.ArrayPoolEventSource.BufferAllocatedReason)">
|
||||
<summary>
|
||||
Event for when a buffer is allocated by the pool. In an ideal situation, the number
|
||||
of BufferAllocated events is significantly smaller than the number of BufferRented and
|
||||
BufferReturned events.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.ArrayPoolEventSource.BufferReturned(System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Event raised when a buffer is returned to the pool. This event is raised regardless of whether
|
||||
the returned buffer is stored or dropped. In an ideal situation, the number of BufferReturned
|
||||
events exactly matches the number of BufferRented events.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.DefaultArrayPool`1.DefaultMaxArrayLength">
|
||||
<summary>The default maximum length of each array in the pool (2^20).</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.DefaultArrayPool`1.DefaultMaxNumberOfArraysPerBucket">
|
||||
<summary>The default maximum number of arrays per bucket that are available for rent.</summary>
|
||||
</member>
|
||||
<member name="F:System.Buffers.DefaultArrayPool`1.s_emptyArray">
|
||||
<summary>Lazily-allocated empty array used when arrays of length 0 are requested.</summary>
|
||||
</member>
|
||||
<member name="P:System.Buffers.DefaultArrayPool`1.Id">
|
||||
<summary>Gets an ID for the pool to use with events.</summary>
|
||||
</member>
|
||||
<member name="T:System.Buffers.DefaultArrayPool`1.Bucket">
|
||||
<summary>Provides a thread-safe bucket containing buffers that can be Rent'd and Return'd.</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.DefaultArrayPool`1.Bucket.#ctor(System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Creates the pool with numberOfBuffers arrays where each buffer is of bufferLength length.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.Buffers.DefaultArrayPool`1.Bucket.Id">
|
||||
<summary>Gets an ID for the bucket to use with events.</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.DefaultArrayPool`1.Bucket.Rent">
|
||||
<summary>Takes an array from the bucket. If the bucket is empty, returns null.</summary>
|
||||
</member>
|
||||
<member name="M:System.Buffers.DefaultArrayPool`1.Bucket.Return(`0[])">
|
||||
<summary>
|
||||
Attempts to return the buffer to the bucket. If successful, the buffer will be stored
|
||||
in the bucket and true will be returned; otherwise, the buffer won't be stored, and false
|
||||
will be returned.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.SR.ArgumentException_BufferNotFromPool">
|
||||
<summary>The buffer is not associated with this pool and may not be returned to it.</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
bin/Debug/System.IO.Pipelines.dll
Normal file
BIN
bin/Debug/System.IO.Pipelines.dll
Normal file
Binary file not shown.
391
bin/Debug/System.IO.Pipelines.xml
Normal file
391
bin/Debug/System.IO.Pipelines.xml
Normal file
@ -0,0 +1,391 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>System.IO.Pipelines</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.IO.Pipelines.FlushResult">
|
||||
<summary>Result returned by <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> call.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.FlushResult.#ctor(System.Boolean,System.Boolean)">
|
||||
<summary>Initializes a new instance of <see cref="T:System.IO.Pipelines.FlushResult" /> struct setting the <see cref="P:System.IO.Pipelines.FlushResult.IsCanceled" /> and <see cref="P:System.IO.Pipelines.FlushResult.IsCompleted" /> flags.</summary>
|
||||
<param name="isCanceled">
|
||||
<see langword="true" /> to indicate the current <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> operation that produced this <see cref="T:System.IO.Pipelines.FlushResult" /> was canceled by <see cref="M:System.IO.Pipelines.PipeWriter.CancelPendingFlush" />; otherwise, <see langword="false" />.</param>
|
||||
<param name="isCompleted">
|
||||
<see langword="true" /> to indicate the reader is no longer reading data written to the <see cref="T:System.IO.Pipelines.PipeWriter" />.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.FlushResult.IsCanceled">
|
||||
<summary>Gets a value that indicates whether the current <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> operation was canceled by <see cref="M:System.IO.Pipelines.PipeWriter.CancelPendingFlush" />.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the current <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> operation was canceled by <see cref="M:System.IO.Pipelines.PipeWriter.CancelPendingFlush" />; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.FlushResult.IsCompleted">
|
||||
<summary>Gets a value that indicates the reader is no longer reading data written to the <see cref="T:System.IO.Pipelines.PipeWriter" />.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the reader is no longer reading data written to the <see cref="T:System.IO.Pipelines.PipeWriter" />; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.IDuplexPipe">
|
||||
<summary>Defines a class that provides a duplex pipe from which data can be read from and written to.</summary>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.IDuplexPipe.Input">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeReader" /> half of the duplex pipe.</summary>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.IDuplexPipe.Output">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeWriter" /> half of the duplex pipe.</summary>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.Pipe">
|
||||
<summary>The default <see cref="T:System.IO.Pipelines.PipeWriter" /> and <see cref="T:System.IO.Pipelines.PipeReader" /> implementation.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.Pipe.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.IO.Pipelines.Pipe" /> class using <see cref="P:System.IO.Pipelines.PipeOptions.Default" /> as options.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.Pipe.#ctor(System.IO.Pipelines.PipeOptions)">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.IO.Pipelines.Pipe" /> class with the specified options.</summary>
|
||||
<param name="options">The set of options for this pipe.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.Pipe.Reset">
|
||||
<summary>Resets the pipe.</summary>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.Pipe.Reader">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeReader" /> for this pipe.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeReader" /> instance for this pipe.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.Pipe.Writer">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeWriter" /> for this pipe.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeWriter" /> instance for this pipe.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.PipeOptions">
|
||||
<summary>Represents a set of <see cref="T:System.IO.Pipelines.Pipe" /> options.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeOptions.#ctor(System.Buffers.MemoryPool{System.Byte},System.IO.Pipelines.PipeScheduler,System.IO.Pipelines.PipeScheduler,System.Int64,System.Int64,System.Int32,System.Boolean)">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.IO.Pipelines.PipeOptions" /> class with the specified parameters.</summary>
|
||||
<param name="pool">The pool of memory blocks to be used for buffer management.</param>
|
||||
<param name="readerScheduler">The <see cref="T:System.IO.Pipelines.PipeScheduler" /> to be used to execute <see cref="T:System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</param>
|
||||
<param name="writerScheduler">The <see cref="T:System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="T:System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</param>
|
||||
<param name="pauseWriterThreshold">The number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> before <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> starts blocking. A value of zero prevents <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> from ever blocking, effectively making the number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> unlimited.</param>
|
||||
<param name="resumeWriterThreshold">The number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> when <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> stops blocking.</param>
|
||||
<param name="minimumSegmentSize">The minimum size of the segment requested from <paramref name="pool" />.</param>
|
||||
<param name="useSynchronizationContext">
|
||||
<see langword="true" /> if asynchronous continuations should be executed on the <see cref="T:System.Threading.SynchronizationContext" /> they were captured on; <see langword="false" /> otherwise. This takes precedence over the schedulers specified in <see cref="P:System.IO.Pipelines.PipeOptions.ReaderScheduler" /> and <see cref="P:System.IO.Pipelines.PipeOptions.WriterScheduler" />.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.Default">
|
||||
<summary>Gets the default instance of <see cref="T:System.IO.Pipelines.PipeOptions" />.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeOptions" /> object initialized with default parameters.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.MinimumSegmentSize">
|
||||
<summary>Gets the minimum size of the segment requested from the <see cref="P:System.IO.Pipelines.PipeOptions.Pool" />.</summary>
|
||||
<returns>The minimum size of the segment requested from the <see cref="P:System.IO.Pipelines.PipeOptions.Pool" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.PauseWriterThreshold">
|
||||
<summary>Gets the number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> when <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> starts blocking. A value of zero prevents <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> from ever blocking, effectively making the number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> unlimited.</summary>
|
||||
<returns>The number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> when <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> starts blocking.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.Pool">
|
||||
<summary>Gets the <see cref="T:System.Buffers.MemoryPool`1" /> object used for buffer management.</summary>
|
||||
<returns>A pool of memory blocks used for buffer management.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.ReaderScheduler">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="T:System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeScheduler" /> that is used to execute <see cref="T:System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.ResumeWriterThreshold">
|
||||
<summary>Gets the number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> when <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> stops blocking.</summary>
|
||||
<returns>The number of bytes in the <see cref="T:System.IO.Pipelines.Pipe" /> when <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> stops blocking.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.UseSynchronizationContext">
|
||||
<summary>Gets a value that determines if asynchronous callbacks and continuations should be executed on the <see cref="T:System.Threading.SynchronizationContext" /> they were captured on. This takes precedence over the schedulers specified in <see cref="P:System.IO.Pipelines.PipeOptions.ReaderScheduler" /> and <see cref="P:System.IO.Pipelines.PipeOptions.WriterScheduler" />.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if asynchronous callbacks and continuations should be executed on the <see cref="T:System.Threading.SynchronizationContext" /> they were captured on; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeOptions.WriterScheduler">
|
||||
<summary>Gets the <see cref="T:System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="T:System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeScheduler" /> object used to execute <see cref="T:System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.PipeReader">
|
||||
<summary>Defines a class that provides access to a read side of pipe.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.IO.Pipelines.PipeReader" /> class.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.AdvanceTo(System.SequencePosition,System.SequencePosition)">
|
||||
<summary>Moves forward the pipeline's read cursor to after the consumed data, marking the data as processed, read and examined.</summary>
|
||||
<param name="consumed">Marks the extent of the data that has been successfully processed.</param>
|
||||
<param name="examined">Marks the extent of the data that has been read and examined.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.AdvanceTo(System.SequencePosition)">
|
||||
<summary>Moves forward the pipeline's read cursor to after the consumed data, marking the data as processed.</summary>
|
||||
<param name="consumed">Marks the extent of the data that has been successfully processed.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.AsStream(System.Boolean)">
|
||||
<summary>Returns a <see cref="T:System.IO.Stream" /> representation of the <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="leaveOpen">An optional flag that indicates whether disposing the returned <see cref="T:System.IO.Stream" /> leaves <see cref="T:System.IO.Pipelines.PipeReader" /> open (<see langword="true" />) or completes <see cref="T:System.IO.Pipelines.PipeReader" /> (<see langword="false" />).</param>
|
||||
<returns>A stream that represents the <see cref="T:System.IO.Pipelines.PipeReader" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.CancelPendingRead">
|
||||
<summary>Cancels the pending <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> operation without causing it to throw and without completing the <see cref="T:System.IO.Pipelines.PipeReader" />. If there is no pending operation, this cancels the next operation.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.Complete(System.Exception)">
|
||||
<summary>Signals to the producer that the consumer is done reading.</summary>
|
||||
<param name="exception">Optional <see cref="T:System.Exception" /> indicating a failure that's causing the pipeline to complete.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.CompleteAsync(System.Exception)">
|
||||
<summary>Marks the current pipe reader instance as being complete, meaning no more data will be read from it.</summary>
|
||||
<param name="exception">An optional exception that indicates the failure that caused the reader to complete.</param>
|
||||
<returns>A value task that represents the asynchronous complete operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.CopyToAsync(System.IO.Pipelines.PipeWriter,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads the bytes from the <see cref="T:System.IO.Pipelines.PipeReader" /> and writes them to the specified <see cref="T:System.IO.Pipelines.PipeWriter" />, using a specified cancellation token.</summary>
|
||||
<param name="destination">The pipe writer to which the contents of the current stream will be copied.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents the asynchronous copy operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.CopyToAsync(System.IO.Stream,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads the bytes from the <see cref="T:System.IO.Pipelines.PipeReader" /> and writes them to the specified stream, using a specified cancellation token.</summary>
|
||||
<param name="destination">The stream to which the contents of the current stream will be copied.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents the asynchronous copy operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.Create(System.Buffers.ReadOnlySequence{System.Byte})">
|
||||
<summary>Creates a <see cref="T:System.IO.Pipelines.PipeReader" /> wrapping the specified <see cref="T:System.Buffers.ReadOnlySequence`1" />.</summary>
|
||||
<param name="sequence">The sequence to wrap.</param>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeReader" /> that wraps the <see cref="T:System.Buffers.ReadOnlySequence`1" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.Create(System.IO.Stream,System.IO.Pipelines.StreamPipeReaderOptions)">
|
||||
<summary>Creates a <see cref="T:System.IO.Pipelines.PipeReader" /> wrapping the specified <see cref="T:System.IO.Stream" />.</summary>
|
||||
<param name="stream">The stream that the pipe reader will wrap.</param>
|
||||
<param name="readerOptions">The options to configure the pipe reader.</param>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeReader" /> that wraps the <see cref="T:System.IO.Stream" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.OnWriterCompleted(System.Action{System.Exception,System.Object},System.Object)">
|
||||
<summary>Registers a callback that executes when the <see cref="T:System.IO.Pipelines.PipeWriter" /> side of the pipe is completed.</summary>
|
||||
<param name="callback">The callback to register.</param>
|
||||
<param name="state">The state object to pass to <paramref name="callback" /> when it's invoked.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads a sequence of bytes from the current <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see langword="default" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> representing the asynchronous read operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.ReadAtLeastAsync(System.Int32,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads a sequence of bytes from the current <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="minimumSize">The minimum length that needs to be buffered in order for the call to return.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see langword="default" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> representing the asynchronous read operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.ReadAtLeastAsyncCore(System.Int32,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads a sequence of bytes from the current <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="minimumSize">The minimum length that needs to be buffered in order for the call to return.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see langword="default" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> representing the asynchronous read operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeReader.TryRead(System.IO.Pipelines.ReadResult@)">
|
||||
<summary>Attempts to synchronously read data the <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="result">When this method returns <see langword="true" />, this value is set to a <see cref="T:System.IO.Pipelines.ReadResult" /> instance that represents the result of the read call; otherwise, this value is set to <see langword="default" />.</param>
|
||||
<returns>
|
||||
<see langword="true" /> if data was available, or if the call was canceled or the writer was completed; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.PipeScheduler">
|
||||
<summary>Abstraction for running <see cref="T:System.IO.Pipelines.PipeReader" /> and <see cref="T:System.IO.Pipelines.PipeWriter" /> callbacks and continuations.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeScheduler.#ctor">
|
||||
<summary>Initializes new a <see cref="T:System.IO.Pipelines.PipeScheduler" /> instance.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeScheduler.Schedule(System.Action{System.Object},System.Object)">
|
||||
<summary>Requests <paramref name="action" /> to be run on scheduler with <paramref name="state" /> being passed in.</summary>
|
||||
<param name="action">The single-parameter action delegate to schedule.</param>
|
||||
<param name="state">The parameter to pass to the <paramref name="action" /> delegate.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeScheduler.Inline">
|
||||
<summary>The <see cref="T:System.IO.Pipelines.PipeScheduler" /> implementation that runs callbacks inline.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeScheduler" /> instance that runs callbacks inline.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeScheduler.ThreadPool">
|
||||
<summary>The <see cref="T:System.IO.Pipelines.PipeScheduler" /> implementation that queues callbacks to the thread pool.</summary>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeScheduler" /> instance that queues callbacks to the thread pool.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.PipeWriter">
|
||||
<summary>Defines a class that provides a pipeline to which data can be written.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.#ctor">
|
||||
<summary>Initializes a new instance of the class.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.Advance(System.Int32)">
|
||||
<summary>Notifies the <see cref="T:System.IO.Pipelines.PipeWriter" /> that <paramref name="bytes" /> bytes were written to the output <see cref="T:System.Span`1" /> or <see cref="T:System.Memory`1" />. You must call <see cref="M:System.IO.Pipelines.PipeWriter.GetSpan(System.Int32)" /> or <see cref="M:System.IO.Pipelines.PipeWriter.GetMemory(System.Int32)" /> again and use the returned buffer to continue writing more data after calling <see cref="M:System.IO.Pipelines.PipeWriter.Advance(System.Int32)" />; you cannot write to a previously acquired buffer.</summary>
|
||||
<param name="bytes">The number of bytes written to the <see cref="T:System.Span`1" /> or <see cref="T:System.Memory`1" />.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.AsStream(System.Boolean)">
|
||||
<summary>Returns a <see cref="T:System.IO.Stream" /> representation of the <see cref="T:System.IO.Pipelines.PipeWriter" />.</summary>
|
||||
<param name="leaveOpen">An optional flag that indicates whether disposing the returned <see cref="T:System.IO.Stream" /> leaves <see cref="T:System.IO.Pipelines.PipeReader" /> open (<see langword="true" />) or completes <see cref="T:System.IO.Pipelines.PipeReader" /> (<see langword="false" />).</param>
|
||||
<returns>A stream that represents the <see cref="T:System.IO.Pipelines.PipeWriter" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.CancelPendingFlush">
|
||||
<summary>Cancels the pending <see cref="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)" /> or <see cref="M:System.IO.Pipelines.PipeWriter.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)" /> operation without causing the operation to throw and without completing the <see cref="T:System.IO.Pipelines.PipeWriter" />. If there is no pending operation, this cancels the next operation.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.Complete(System.Exception)">
|
||||
<summary>Marks the <see cref="T:System.IO.Pipelines.PipeWriter" /> as being complete, meaning no more items will be written to it.</summary>
|
||||
<param name="exception">Optional <see cref="T:System.Exception" /> indicating a failure that's causing the pipeline to complete.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.CompleteAsync(System.Exception)">
|
||||
<summary>Marks the current pipe writer instance as being complete, meaning no more data will be written to it.</summary>
|
||||
<param name="exception">An optional exception that indicates the failure that caused the pipeline to complete.</param>
|
||||
<returns>A value task that represents the asynchronous complete operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.CopyFromAsync(System.IO.Stream,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads the bytes from the specified stream and writes them to the <see cref="T:System.IO.Pipelines.PipeWriter" />.</summary>
|
||||
<param name="source">The stream from which the contents will be copied.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents the asynchronous copy operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.Create(System.IO.Stream,System.IO.Pipelines.StreamPipeWriterOptions)">
|
||||
<summary>Creates a <see cref="T:System.IO.Pipelines.PipeWriter" /> wrapping the specified <see cref="T:System.IO.Stream" />.</summary>
|
||||
<param name="stream">The stream that the pipe writer will wrap.</param>
|
||||
<param name="writerOptions">The options to configure the pipe writer.</param>
|
||||
<returns>A <see cref="T:System.IO.Pipelines.PipeWriter" /> that wraps the <see cref="T:System.IO.Stream" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.FlushAsync(System.Threading.CancellationToken)">
|
||||
<summary>Makes bytes written available to <see cref="T:System.IO.Pipelines.PipeReader" /> and runs <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> continuation.</summary>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents and wraps the asynchronous flush operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.GetMemory(System.Int32)">
|
||||
<summary>Returns a <see cref="T:System.Memory`1" /> to write to that is at least the requested size, as specified by the <paramref name="sizeHint" /> parameter.</summary>
|
||||
<param name="sizeHint">The minimum length of the returned <see cref="T:System.Memory`1" />. If 0, a non-empty memory buffer of arbitrary size is returned.</param>
|
||||
<exception cref="T:System.OutOfMemoryException">The requested buffer size is not available.</exception>
|
||||
<returns>A memory buffer of at least <paramref name="sizeHint" /> bytes. If <paramref name="sizeHint" /> is 0, returns a non-empty buffer of arbitrary size.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.GetSpan(System.Int32)">
|
||||
<summary>Returns a <see cref="T:System.Span`1" /> to write to that is at least the requested size, as specified by the <paramref name="sizeHint" /> parameter.</summary>
|
||||
<param name="sizeHint">The minimum length of the returned <see cref="T:System.Span`1" />. If 0, a non-empty buffer of arbitrary size is returned.</param>
|
||||
<exception cref="T:System.OutOfMemoryException">The requested buffer size is not available.</exception>
|
||||
<returns>A buffer of at least <paramref name="sizeHint" /> bytes. If <paramref name="sizeHint" /> is 0, returns a non-empty buffer of arbitrary size.</returns>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.OnReaderCompleted(System.Action{System.Exception,System.Object},System.Object)">
|
||||
<summary>Registers a callback that executes when the <see cref="T:System.IO.Pipelines.PipeReader" /> side of the pipe is completed.</summary>
|
||||
<param name="callback">The callback to register.</param>
|
||||
<param name="state">The state object to pass to <paramref name="callback" /> when it's invoked.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.PipeWriter.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
|
||||
<summary>Writes the specified byte memory range to the pipe and makes data accessible to the <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
<param name="source">The read-only byte memory region to write.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents the asynchronous write operation, and wraps the flush asynchronous operation.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeWriter.CanGetUnflushedBytes">
|
||||
<summary>Gets a value that indicates whether the current <see cref="T:System.IO.Pipelines.PipeWriter" /> supports reporting the count of unflushed bytes.</summary>
|
||||
<returns>
|
||||
<see langword="true" />If a class derived from <see cref="T:System.IO.Pipelines.PipeWriter" /> does not support getting the unflushed bytes, calls to <see cref="P:System.IO.Pipelines.PipeWriter.UnflushedBytes" /> throw <see cref="T:System.NotImplementedException" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.PipeWriter.UnflushedBytes">
|
||||
<summary>When overridden in a derived class, gets the count of unflushed bytes within the current writer.</summary>
|
||||
<exception cref="T:System.NotImplementedException">The <see cref="T:System.IO.Pipelines.PipeWriter" /> does not support getting the unflushed byte count.</exception>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.ReadResult">
|
||||
<summary>Represents the result of a <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> call.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.ReadResult.#ctor(System.Buffers.ReadOnlySequence{System.Byte},System.Boolean,System.Boolean)">
|
||||
<summary>Creates a new instance of <see cref="T:System.IO.Pipelines.ReadResult" /> setting <see cref="P:System.IO.Pipelines.ReadResult.IsCanceled" /> and <see cref="P:System.IO.Pipelines.ReadResult.IsCompleted" /> flags.</summary>
|
||||
<param name="buffer">The read-only sequence containing the bytes of data that were read in the <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> call.</param>
|
||||
<param name="isCanceled">A flag that indicates if the <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> operation that produced this <see cref="T:System.IO.Pipelines.ReadResult" /> was canceled by <see cref="M:System.IO.Pipelines.PipeReader.CancelPendingRead" />.</param>
|
||||
<param name="isCompleted">A flag that indicates whether the end of the data stream has been reached.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.ReadResult.Buffer">
|
||||
<summary>Gets the <see cref="T:System.Buffers.ReadOnlySequence`1" /> that was read.</summary>
|
||||
<returns>A read-only sequence containing the bytes of data that were read in the <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> call.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.ReadResult.IsCanceled">
|
||||
<summary>Gets a value that indicates whether the current <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> operation was canceled by <see cref="M:System.IO.Pipelines.PipeReader.CancelPendingRead" />.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the <see cref="M:System.IO.Pipelines.PipeReader.ReadAsync(System.Threading.CancellationToken)" /> operation that produced this <see cref="T:System.IO.Pipelines.ReadResult" /> was canceled by <see cref="M:System.IO.Pipelines.PipeReader.CancelPendingRead" />; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.ReadResult.IsCompleted">
|
||||
<summary>Gets a value that indicates whether the end of the data stream has been reached.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the end of the data stream has been reached; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.StreamPipeExtensions">
|
||||
<summary>Provides extension methods for <see cref="T:System.IO.Stream" /> that support read and write operations directly into pipes.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.StreamPipeExtensions.CopyToAsync(System.IO.Stream,System.IO.Pipelines.PipeWriter,System.Threading.CancellationToken)">
|
||||
<summary>Asynchronously reads the bytes from the <see cref="T:System.IO.Stream" /> and writes them to the specified <see cref="T:System.IO.Pipelines.PipeWriter" />, using a cancellation token.</summary>
|
||||
<param name="source">The stream from which the contents of the current stream will be copied.</param>
|
||||
<param name="destination">The writer to which the contents of the source stream will be copied.</param>
|
||||
<param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
|
||||
<exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
|
||||
<returns>A task that represents the asynchronous copy operation.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.StreamPipeReaderOptions">
|
||||
<summary>Represents a set of options for controlling the creation of the <see cref="T:System.IO.Pipelines.PipeReader" />.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.StreamPipeReaderOptions.#ctor(System.Buffers.MemoryPool{System.Byte},System.Int32,System.Int32,System.Boolean,System.Boolean)">
|
||||
<summary>Initializes a <see cref="T:System.IO.Pipelines.StreamPipeReaderOptions" /> instance, optionally specifying a memory pool, a minimum buffer size, a minimum read size, and whether the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes.</summary>
|
||||
<param name="pool">The memory pool to use when allocating memory. The default value is <see langword="null" />.</param>
|
||||
<param name="bufferSize">The minimum buffer size to use when renting memory from the <paramref name="pool" />. The default value is 4096.</param>
|
||||
<param name="minimumReadSize">The threshold of remaining bytes in the buffer before a new buffer is allocated. The default value is 1024.</param>
|
||||
<param name="leaveOpen">
|
||||
<see langword="true" /> to leave the underlying stream open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes; <see langword="false" /> to close it. The default is <see langword="false" />.</param>
|
||||
<param name="useZeroByteReads">
|
||||
<see langword="true" /> if reads with an empty buffer should be issued to the underlying stream before allocating memory; otherwise, <see langword="false" />.</param>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.StreamPipeReaderOptions.#ctor(System.Buffers.MemoryPool{System.Byte},System.Int32,System.Int32,System.Boolean)">
|
||||
<summary>Initializes a <see cref="T:System.IO.Pipelines.StreamPipeReaderOptions" /> instance, optionally specifying a memory pool, a minimum buffer size, a minimum read size, and whether the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes.</summary>
|
||||
<param name="pool">The memory pool to use when allocating memory. The default value is <see langword="null" />.</param>
|
||||
<param name="bufferSize">The minimum buffer size to use when renting memory from the <paramref name="pool" />. The default value is 4096.</param>
|
||||
<param name="minimumReadSize">The threshold of remaining bytes in the buffer before a new buffer is allocated. The default value is 1024.</param>
|
||||
<param name="leaveOpen">
|
||||
<see langword="true" /> to leave the underlying stream open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes; <see langword="false" /> to close it. The default is <see langword="false" />.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeReaderOptions.BufferSize">
|
||||
<summary>Gets the minimum buffer size to use when renting memory from the <see cref="P:System.IO.Pipelines.StreamPipeReaderOptions.Pool" />.</summary>
|
||||
<returns>The buffer size.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeReaderOptions.LeaveOpen">
|
||||
<summary>Gets the value that indicates if the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeReader" /> completes; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeReaderOptions.MinimumReadSize">
|
||||
<summary>Gets the threshold of remaining bytes in the buffer before a new buffer is allocated.</summary>
|
||||
<returns>The minimum read size.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeReaderOptions.Pool">
|
||||
<summary>Gets the <see cref="T:System.Buffers.MemoryPool`1" /> to use when allocating memory.</summary>
|
||||
<returns>A memory pool instance.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeReaderOptions.UseZeroByteReads">
|
||||
<summary>Gets the value that indicates if reads with an empty buffer should be issued to the underlying stream, in order to wait for data to arrive before allocating memory.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if reads with an empty buffer should be issued to the underlying stream before allocating memory; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="T:System.IO.Pipelines.StreamPipeWriterOptions">
|
||||
<summary>Represents a set of options for controlling the creation of the <see cref="T:System.IO.Pipelines.PipeWriter" />.</summary>
|
||||
</member>
|
||||
<member name="M:System.IO.Pipelines.StreamPipeWriterOptions.#ctor(System.Buffers.MemoryPool{System.Byte},System.Int32,System.Boolean)">
|
||||
<summary>Initializes a <see cref="T:System.IO.Pipelines.StreamPipeWriterOptions" /> instance, optionally specifying a memory pool, a minimum buffer size, and whether the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeWriter" /> completes.</summary>
|
||||
<param name="pool">The memory pool to use when allocating memory. The default value is <see langword="null" />.</param>
|
||||
<param name="minimumBufferSize">The minimum buffer size to use when renting memory from the <paramref name="pool" />. The default value is 4096.</param>
|
||||
<param name="leaveOpen">
|
||||
<see langword="true" /> to leave the underlying stream open after the <see cref="T:System.IO.Pipelines.PipeWriter" /> completes; <see langword="false" /> to close it. The default is <see langword="false" />.</param>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeWriterOptions.LeaveOpen">
|
||||
<summary>Gets the value that indicates if the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeWriter" /> completes.</summary>
|
||||
<returns>
|
||||
<see langword="true" /> if the underlying stream should be left open after the <see cref="T:System.IO.Pipelines.PipeWriter" /> completes; otherwise, <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeWriterOptions.MinimumBufferSize">
|
||||
<summary>Gets the minimum buffer size to use when renting memory from the <see cref="P:System.IO.Pipelines.StreamPipeWriterOptions.Pool" />.</summary>
|
||||
<returns>An integer representing the minimum buffer size.</returns>
|
||||
</member>
|
||||
<member name="P:System.IO.Pipelines.StreamPipeWriterOptions.Pool">
|
||||
<summary>Gets the <see cref="T:System.Buffers.MemoryPool`1" /> to use when allocating memory.</summary>
|
||||
<returns>A memory pool instance.</returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
bin/Debug/System.Memory.dll
Normal file
BIN
bin/Debug/System.Memory.dll
Normal file
Binary file not shown.
3489
bin/Debug/System.Memory.xml
Normal file
3489
bin/Debug/System.Memory.xml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
bin/Debug/System.Numerics.Vectors.dll
Normal file
BIN
bin/Debug/System.Numerics.Vectors.dll
Normal file
Binary file not shown.
3451
bin/Debug/System.Numerics.Vectors.xml
Normal file
3451
bin/Debug/System.Numerics.Vectors.xml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
bin/Debug/System.Runtime.CompilerServices.Unsafe.dll
Normal file
BIN
bin/Debug/System.Runtime.CompilerServices.Unsafe.dll
Normal file
Binary file not shown.
353
bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
Normal file
353
bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
Normal file
@ -0,0 +1,353 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>System.Runtime.CompilerServices.Unsafe</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Runtime.CompilerServices.Unsafe">
|
||||
<summary>
|
||||
Contains generic, low-level functionality for manipulating pointers.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
|
||||
<summary>
|
||||
Reads a value of type <typeparamref name="T"/> from the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type to read.</typeparam>
|
||||
<param name="source">The location to read from.</param>
|
||||
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
|
||||
<summary>
|
||||
Reads a value of type <typeparamref name="T"/> from the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type to read.</typeparam>
|
||||
<param name="source">The location to read from.</param>
|
||||
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
|
||||
<summary>
|
||||
Reads a value of type <typeparamref name="T"/> from the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type to read.</typeparam>
|
||||
<param name="source">The location to read from.</param>
|
||||
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
|
||||
<summary>
|
||||
Writes a value of type <typeparamref name="T"/> to the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type of value to write.</typeparam>
|
||||
<param name="destination">The location to write to.</param>
|
||||
<param name="value">The value to write.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
|
||||
<summary>
|
||||
Writes a value of type <typeparamref name="T"/> to the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type of value to write.</typeparam>
|
||||
<param name="destination">The location to write to.</param>
|
||||
<param name="value">The value to write.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
|
||||
<summary>
|
||||
Writes a value of type <typeparamref name="T"/> to the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type of value to write.</typeparam>
|
||||
<param name="destination">The location to write to.</param>
|
||||
<param name="value">The value to write.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
|
||||
<summary>
|
||||
Copies a value of type <typeparamref name="T"/> to the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type of value to copy.</typeparam>
|
||||
<param name="destination">The location to copy to.</param>
|
||||
<param name="source">A reference to the value to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
|
||||
<summary>
|
||||
Copies a value of type <typeparamref name="T"/> to the given location.
|
||||
</summary>
|
||||
<typeparam name="T">The type of value to copy.</typeparam>
|
||||
<param name="destination">The location to copy to.</param>
|
||||
<param name="source">A pointer to the value to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
|
||||
<summary>
|
||||
Returns a pointer to the given by-ref parameter.
|
||||
</summary>
|
||||
<typeparam name="T">The type of object.</typeparam>
|
||||
<param name="value">The object whose pointer is obtained.</param>
|
||||
<returns>A pointer to the given value.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
|
||||
<summary>
|
||||
Returns the size of an object of the given type parameter.
|
||||
</summary>
|
||||
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
|
||||
<returns>The size of an object of type <typeparamref name="T"/>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
|
||||
<summary>
|
||||
Casts the given object to the specified type, performs no dynamic type checking.
|
||||
</summary>
|
||||
<typeparam name="T">The type which the object will be cast to.</typeparam>
|
||||
<param name="o">The object to cast.</param>
|
||||
<returns>The original object, casted to the given type.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
|
||||
<summary>
|
||||
Reinterprets the given location as a reference to a value of type <typeparamref name="T"/>.
|
||||
</summary>
|
||||
<typeparam name="T">The type of the interpreted location.</typeparam>
|
||||
<param name="source">The location of the value to reference.</param>
|
||||
<returns>A reference to a value of type <typeparamref name="T"/>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(``0@)">
|
||||
<summary>
|
||||
Reinterprets the given read-only reference as a reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The read-only reference to reinterpret.</param>
|
||||
<returns>A reference to a value of type <typeparamref name="T"/>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
|
||||
<summary>
|
||||
Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo"/>.
|
||||
</summary>
|
||||
<typeparam name="TFrom">The type of reference to reinterpret.</typeparam>
|
||||
<typeparam name="TTo">The desired type of the reference.</typeparam>
|
||||
<param name="source">The reference to reinterpret.</param>
|
||||
<returns>A reference to a value of type <typeparamref name="TTo"/>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Unbox``1(System.Object)">
|
||||
<summary>
|
||||
Returns a reference to the value type contained with the specified box object.
|
||||
</summary>
|
||||
<typeparam name="T">The type of the value type contained within the box.</typeparam>
|
||||
<param name="box">The boxed value type.</param>
|
||||
<returns>A reference to a value of type <typeparamref name="T"/> in the box object.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
|
||||
<summary>
|
||||
Adds an element offset to the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to add the offset to.</param>
|
||||
<param name="elementOffset">The offset to add.</param>
|
||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(System.Void*,System.Int32)">
|
||||
<summary>
|
||||
Adds an element offset to the given pointer.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The pointer to add the offset to.</param>
|
||||
<param name="elementOffset">The offset to add.</param>
|
||||
<returns>A new pointer that reflects the addition of offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
|
||||
<summary>
|
||||
Adds an element offset to the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to add the offset to.</param>
|
||||
<param name="elementOffset">The offset to add.</param>
|
||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.UIntPtr)">
|
||||
<summary>
|
||||
Adds an element offset to the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to add the offset to.</param>
|
||||
<param name="elementOffset">The offset to add.</param>
|
||||
<returns>A new reference that reflects the addition of offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
|
||||
<summary>
|
||||
Adds a byte offset to the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to add the offset to.</param>
|
||||
<param name="byteOffset">The offset to add.</param>
|
||||
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.UIntPtr)">
|
||||
<summary>
|
||||
Adds a byte offset to the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to add the offset to.</param>
|
||||
<param name="byteOffset">The offset to add.</param>
|
||||
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
|
||||
<summary>
|
||||
Subtracts an element offset from the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to subtract the offset from.</param>
|
||||
<param name="elementOffset">The offset to subtract.</param>
|
||||
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
|
||||
<summary>
|
||||
Subtracts an element offset from the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to subtract the offset from.</param>
|
||||
<param name="elementOffset">The offset to subtract.</param>
|
||||
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.UIntPtr)">
|
||||
<summary>
|
||||
Subtracts an element offset from the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to subtract the offset from.</param>
|
||||
<param name="elementOffset">The offset to subtract.</param>
|
||||
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
|
||||
<summary>
|
||||
Subtracts a byte offset from the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to subtract the offset from.</param>
|
||||
<param name="byteOffset">The offset to subtract.</param>
|
||||
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.UIntPtr)">
|
||||
<summary>
|
||||
Subtracts a byte offset from the given reference.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="source">The reference to subtract the offset from.</param>
|
||||
<param name="byteOffset">The offset to subtract.</param>
|
||||
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
|
||||
<summary>
|
||||
Determines the byte offset from origin to target from the given references.
|
||||
</summary>
|
||||
<typeparam name="T">The type of reference.</typeparam>
|
||||
<param name="origin">The reference to origin.</param>
|
||||
<param name="target">The reference to target.</param>
|
||||
<returns>Byte offset from origin to target i.e. <paramref name="target"/> - <paramref name="origin"/>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
|
||||
<summary>
|
||||
Determines whether the specified references point to the same location.
|
||||
</summary>
|
||||
<param name="left">The first reference to compare.</param>
|
||||
<param name="right">The second reference to compare.</param>
|
||||
<returns><c>true</c> if <paramref name="left"/> and <paramref name="right"/> point to the same location; otherwise <c>false</c>.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressGreaterThan``1(``0@,``0@)">
|
||||
<summary>
|
||||
Determines whether the memory address referenced by <paramref name="left"/> is greater than the memory address referenced by <paramref name="right"/>.
|
||||
</summary>
|
||||
<param name="left">The first reference to compare.</param>
|
||||
<param name="right">The second reference to compare.</param>
|
||||
<returns><c>true</c> if the memory address referenced by <paramref name="left"/> is greater than the memory address referenced by <paramref name="right"/>; otherwise <c>false</c>.</returns>
|
||||
<remarks>
|
||||
This check is conceptually similar to "(void*)(&left) > (void*)(&right)". Both parameters must reference the same object, array, or span;
|
||||
or the objects being referenced must both be pinned; or both references must represent unmanaged pointers; otherwise the result is undefined.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressLessThan``1(``0@,``0@)">
|
||||
<summary>
|
||||
Determines whether the memory address referenced by <paramref name="left"/> is less than the memory address referenced by <paramref name="right"/>.
|
||||
</summary>
|
||||
<param name="left">The first reference to compare.</param>
|
||||
<param name="right">The second reference to compare.</param>
|
||||
<returns><c>true</c> if the memory address referenced by <paramref name="left"/> is less than the memory address referenced by <paramref name="right"/>; otherwise <c>false</c>.</returns>
|
||||
<remarks>
|
||||
This check is conceptually similar to "(void*)(&left) < (void*)(&right)". Both parameters must reference the same object, array, or span;
|
||||
or the objects being referenced must both be pinned; or both references must represent unmanaged pointers; otherwise the result is undefined.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.IsNullRef``1(``0@)">
|
||||
<summary>
|
||||
Returns if a given reference to a value of type <typeparamref name="T"/> is a null reference.
|
||||
</summary>
|
||||
<param name="source">The reference to check.</param>
|
||||
<remarks>This check is conceptually similar to "(void*)(&source) == nullptr".</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.NullRef``1">
|
||||
<summary>
|
||||
Returns a reference to a value of type <typeparamref name="T"/> that is a null reference.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
|
||||
<summary>
|
||||
Copies bytes from the source address to the destination address.
|
||||
</summary>
|
||||
<param name="destination">The destination address to copy to.</param>
|
||||
<param name="source">The source address to copy from.</param>
|
||||
<param name="byteCount">The number of bytes to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
|
||||
<summary>
|
||||
Copies bytes from the source address to the destination address.
|
||||
</summary>
|
||||
<param name="destination">The destination address to copy to.</param>
|
||||
<param name="source">The source address to copy from.</param>
|
||||
<param name="byteCount">The number of bytes to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
|
||||
<summary>
|
||||
Copies bytes from the source address to the destination address
|
||||
without assuming architecture dependent alignment of the addresses.
|
||||
</summary>
|
||||
<param name="destination">The destination address to copy to.</param>
|
||||
<param name="source">The source address to copy from.</param>
|
||||
<param name="byteCount">The number of bytes to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
|
||||
<summary>
|
||||
Copies bytes from the source address to the destination address
|
||||
without assuming architecture dependent alignment of the addresses.
|
||||
</summary>
|
||||
<param name="destination">The destination address to copy to.</param>
|
||||
<param name="source">The source address to copy from.</param>
|
||||
<param name="byteCount">The number of bytes to copy.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
|
||||
<summary>
|
||||
Initializes a block of memory at the given location with a given initial value.
|
||||
</summary>
|
||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
||||
<param name="value">The value to initialize the block to.</param>
|
||||
<param name="byteCount">The number of bytes to initialize.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
|
||||
<summary>
|
||||
Initializes a block of memory at the given location with a given initial value.
|
||||
</summary>
|
||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
||||
<param name="value">The value to initialize the block to.</param>
|
||||
<param name="byteCount">The number of bytes to initialize.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
|
||||
<summary>
|
||||
Initializes a block of memory at the given location with a given initial value
|
||||
without assuming architecture dependent alignment of the address.
|
||||
</summary>
|
||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
||||
<param name="value">The value to initialize the block to.</param>
|
||||
<param name="byteCount">The number of bytes to initialize.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
|
||||
<summary>
|
||||
Initializes a block of memory at the given location with a given initial value
|
||||
without assuming architecture dependent alignment of the address.
|
||||
</summary>
|
||||
<param name="startAddress">The address of the start of the memory block to initialize.</param>
|
||||
<param name="value">The value to initialize the block to.</param>
|
||||
<param name="byteCount">The number of bytes to initialize.</param>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
bin/Debug/System.Text.Encodings.Web.dll
Normal file
BIN
bin/Debug/System.Text.Encodings.Web.dll
Normal file
Binary file not shown.
939
bin/Debug/System.Text.Encodings.Web.xml
Normal file
939
bin/Debug/System.Text.Encodings.Web.xml
Normal file
@ -0,0 +1,939 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>System.Text.Encodings.Web</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Text.Encodings.Web.HtmlEncoder">
|
||||
<summary>Represents an HTML character encoding.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.HtmlEncoder.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> class.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
|
||||
<summary>Creates a new instance of the HtmlEncoder class with the specified settings.</summary>
|
||||
<param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> instance encodes, primarily which characters to encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="settings" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.HtmlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
|
||||
<param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="allowedRanges" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Encodings.Web.HtmlEncoder.Default">
|
||||
<summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> class.</summary>
|
||||
<returns>A built-in instance of the <see cref="T:System.Text.Encodings.Web.HtmlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Encodings.Web.JavaScriptEncoder">
|
||||
<summary>Represents a JavaScript character encoding.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.JavaScriptEncoder.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> class.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
|
||||
<summary>Creates a new instance of JavaScriptEncoder class with the specified settings.</summary>
|
||||
<param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> instance encodes, primarily which characters to encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="settings" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.JavaScriptEncoder.Create(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode.</summary>
|
||||
<param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="allowedRanges" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Encodings.Web.JavaScriptEncoder.Default">
|
||||
<summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> class.</summary>
|
||||
<returns>A built-in instance of the <see cref="T:System.Text.Encodings.Web.JavaScriptEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Encodings.Web.JavaScriptEncoder.UnsafeRelaxedJsonEscaping">
|
||||
<summary>Gets a built-in JavaScript encoder instance that is less strict about what is encoded.</summary>
|
||||
<returns>A JavaScript encoder instance.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Encodings.Web.TextEncoder">
|
||||
<summary>The base class of web encoders.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.TextEncoder" /> class.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.Char[],System.Int32,System.Int32)">
|
||||
<summary>Encodes characters from an array and writes them to a <see cref="T:System.IO.TextWriter" /> object.</summary>
|
||||
<param name="output">The stream to which to write the encoded text.</param>
|
||||
<param name="value">The array of characters to encode.</param>
|
||||
<param name="startIndex">The array index of the first character to encode.</param>
|
||||
<param name="characterCount">The number of characters in the array to encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="output" /> is <see langword="null" />.</exception>
|
||||
<exception cref="T:System.ArgumentException">The <see cref="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)" /> method failed. The encoder does not implement <see cref="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter" /> correctly.</exception>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="value" /> is <see langword="null" />.</exception>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="startIndex" /> is out of range.</exception>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="characterCount" /> is out of range.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String,System.Int32,System.Int32)">
|
||||
<summary>Encodes a substring and writes it to a <see cref="T:System.IO.TextWriter" /> object.</summary>
|
||||
<param name="output">The stream to which to write the encoded text.</param>
|
||||
<param name="value">The string whose substring is to be encoded.</param>
|
||||
<param name="startIndex">The index where the substring starts.</param>
|
||||
<param name="characterCount">The number of characters in the substring.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="output" /> is <see langword="null" />.</exception>
|
||||
<exception cref="T:System.ArgumentException">The <see cref="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)" /> method failed. The encoder does not implement <see cref="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter" /> correctly.</exception>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="value" /> is <see langword="null" />.</exception>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="startIndex" /> is out of range.</exception>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="characterCount" /> is out of range.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.IO.TextWriter,System.String)">
|
||||
<summary>Encodes the specified string to a <see cref="T:System.IO.TextWriter" /> object.</summary>
|
||||
<param name="output">The stream to which to write the encoded text.</param>
|
||||
<param name="value">The string to encode.</param>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.ReadOnlySpan{System.Char},System.Span{System.Char},System.Int32@,System.Int32@,System.Boolean)">
|
||||
<summary>Encodes the supplied characters.</summary>
|
||||
<param name="source">A source buffer containing the characters to encode.</param>
|
||||
<param name="destination">The destination buffer to which the encoded form of <paramref name="source" /> will be written.</param>
|
||||
<param name="charsConsumed">The number of characters consumed from the <paramref name="source" /> buffer.</param>
|
||||
<param name="charsWritten">The number of characters written to the <paramref name="destination" /> buffer.</param>
|
||||
<param name="isFinalBlock">
|
||||
<see langword="true" /> to indicate there is no further source data that needs to be encoded; otherwise, <see langword="false" />.</param>
|
||||
<returns>An enumeration value that describes the result of the encoding operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.Encode(System.String)">
|
||||
<summary>Encodes the supplied string and returns the encoded text as a new string.</summary>
|
||||
<param name="value">The string to encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="value" /> is <see langword="null" />.</exception>
|
||||
<exception cref="T:System.ArgumentException">The <see cref="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)" /> method failed. The encoder does not implement <see cref="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter" /> correctly.</exception>
|
||||
<returns>The encoded string.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.EncodeUtf8(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@,System.Int32@,System.Boolean)">
|
||||
<summary>Encodes the supplied UTF-8 text.</summary>
|
||||
<param name="utf8Source">A source buffer containing the UTF-8 text to encode.</param>
|
||||
<param name="utf8Destination">The destination buffer to which the encoded form of <paramref name="utf8Source" /> will be written.</param>
|
||||
<param name="bytesConsumed">The number of bytes consumed from the <paramref name="utf8Source" /> buffer.</param>
|
||||
<param name="bytesWritten">The number of bytes written to the <paramref name="utf8Destination" /> buffer.</param>
|
||||
<param name="isFinalBlock">
|
||||
<see langword="true" /> to indicate there is no further source data that needs to be encoded; otherwise, <see langword="false" />.</param>
|
||||
<returns>A status code that describes the result of the encoding operation.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncode(System.Char*,System.Int32)">
|
||||
<summary>Finds the index of the first character to encode.</summary>
|
||||
<param name="text">The text buffer to search.</param>
|
||||
<param name="textLength">The number of characters in <paramref name="text" />.</param>
|
||||
<returns>The index of the first character to encode.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.FindFirstCharacterToEncodeUtf8(System.ReadOnlySpan{System.Byte})">
|
||||
<summary>Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance.</summary>
|
||||
<param name="utf8Text">The UTF-8 text input buffer to search.</param>
|
||||
<returns>The index of the first element in <paramref name="utf8Text" /> that would be escaped by the current encoder instance, or -1 if no data in <paramref name="utf8Text" /> requires escaping.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.TryEncodeUnicodeScalar(System.Int32,System.Char*,System.Int32,System.Int32@)">
|
||||
<summary>Encodes a Unicode scalar value and writes it to a buffer.</summary>
|
||||
<param name="unicodeScalar">A Unicode scalar value.</param>
|
||||
<param name="buffer">A pointer to the buffer to which to write the encoded text.</param>
|
||||
<param name="bufferLength">The length of the destination <paramref name="buffer" /> in characters.</param>
|
||||
<param name="numberOfCharactersWritten">When the method returns, indicates the number of characters written to the <paramref name="buffer" />.</param>
|
||||
<returns>
|
||||
<see langword="false" /> if <paramref name="bufferLength" /> is too small to fit the encoded text; otherwise, returns <see langword="true" />.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoder.WillEncode(System.Int32)">
|
||||
<summary>Determines if a given Unicode scalar value will be encoded.</summary>
|
||||
<param name="unicodeScalar">A Unicode scalar value.</param>
|
||||
<returns>
|
||||
<see langword="true" /> if the <paramref name="unicodeScalar" /> value will be encoded by this encoder; otherwise, returns <see langword="false" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Encodings.Web.TextEncoder.MaxOutputCharactersPerInputCharacter">
|
||||
<summary>Gets the maximum number of characters that this encoder can generate for each input code point.</summary>
|
||||
<returns>The maximum number of characters.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Encodings.Web.TextEncoderSettings">
|
||||
<summary>Represents a filter that allows only certain Unicode code points.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor">
|
||||
<summary>Instantiates an empty filter (allows no code points through by default).</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Encodings.Web.TextEncoderSettings)">
|
||||
<summary>Instantiates a filter by cloning the allowed list of another <see cref="T:System.Text.Encodings.Web.TextEncoderSettings" /> object.</summary>
|
||||
<param name="other">The other <see cref="T:System.Text.Encodings.Web.TextEncoderSettings" /> object to be cloned.</param>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.#ctor(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Instantiates a filter where only the character ranges specified by <paramref name="allowedRanges" /> are allowed by the filter.</summary>
|
||||
<param name="allowedRanges">The allowed character ranges.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="allowedRanges" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacter(System.Char)">
|
||||
<summary>Allows the character specified by <paramref name="character" /> through the filter.</summary>
|
||||
<param name="character">The allowed character.</param>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCharacters(System.Char[])">
|
||||
<summary>Allows all characters specified by <paramref name="characters" /> through the filter.</summary>
|
||||
<param name="characters">The allowed characters.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="characters" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowCodePoints(System.Collections.Generic.IEnumerable{System.Int32})">
|
||||
<summary>Allows all code points specified by <paramref name="codePoints" />.</summary>
|
||||
<param name="codePoints">The allowed code points.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="codePoints" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRange(System.Text.Unicode.UnicodeRange)">
|
||||
<summary>Allows all characters specified by <paramref name="range" /> through the filter.</summary>
|
||||
<param name="range">The range of characters to be allowed.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="range" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.AllowRanges(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Allows all characters specified by <paramref name="ranges" /> through the filter.</summary>
|
||||
<param name="ranges">The ranges of characters to be allowed.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="ranges" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.Clear">
|
||||
<summary>Resets this object by disallowing all characters.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacter(System.Char)">
|
||||
<summary>Disallows the character <paramref name="character" /> through the filter.</summary>
|
||||
<param name="character">The disallowed character.</param>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidCharacters(System.Char[])">
|
||||
<summary>Disallows all characters specified by <paramref name="characters" /> through the filter.</summary>
|
||||
<param name="characters">The disallowed characters.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="characters" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRange(System.Text.Unicode.UnicodeRange)">
|
||||
<summary>Disallows all characters specified by <paramref name="range" /> through the filter.</summary>
|
||||
<param name="range">The range of characters to be disallowed.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="range" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.ForbidRanges(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Disallows all characters specified by <paramref name="ranges" /> through the filter.</summary>
|
||||
<param name="ranges">The ranges of characters to be disallowed.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="ranges" /> is <see langword="null" />.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.TextEncoderSettings.GetAllowedCodePoints">
|
||||
<summary>Gets an enumerator of all allowed code points.</summary>
|
||||
<returns>The enumerator of allowed code points.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Encodings.Web.UrlEncoder">
|
||||
<summary>Represents a URL character encoding.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.UrlEncoder.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> class.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Encodings.Web.TextEncoderSettings)">
|
||||
<summary>Creates a new instance of UrlEncoder class with the specified settings.</summary>
|
||||
<param name="settings">Settings that control how the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> instance encodes, primarily which characters to encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="settings" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="M:System.Text.Encodings.Web.UrlEncoder.Create(System.Text.Unicode.UnicodeRange[])">
|
||||
<summary>Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode.</summary>
|
||||
<param name="allowedRanges">The set of characters that the encoder is allowed to not encode.</param>
|
||||
<exception cref="T:System.ArgumentNullException">
|
||||
<paramref name="allowedRanges" /> is <see langword="null" />.</exception>
|
||||
<returns>A new instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Encodings.Web.UrlEncoder.Default">
|
||||
<summary>Gets a built-in instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> class.</summary>
|
||||
<returns>A built-in instance of the <see cref="T:System.Text.Encodings.Web.UrlEncoder" /> class.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Unicode.UnicodeRange">
|
||||
<summary>Represents a contiguous range of Unicode code points.</summary>
|
||||
</member>
|
||||
<member name="M:System.Text.Unicode.UnicodeRange.#ctor(System.Int32,System.Int32)">
|
||||
<summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange" /> that includes a specified number of characters starting at a specified Unicode code point.</summary>
|
||||
<param name="firstCodePoint">The first code point in the range.</param>
|
||||
<param name="length">The number of code points in the range.</param>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="firstCodePoint" /> is less than zero or greater than 0xFFFF.
|
||||
|
||||
-or-
|
||||
|
||||
<paramref name="length" /> is less than zero.
|
||||
|
||||
-or-
|
||||
|
||||
<paramref name="firstCodePoint" /> plus <paramref name="length" /> is greater than 0xFFFF.</exception>
|
||||
</member>
|
||||
<member name="M:System.Text.Unicode.UnicodeRange.Create(System.Char,System.Char)">
|
||||
<summary>Creates a new <see cref="T:System.Text.Unicode.UnicodeRange" /> instance from a span of characters.</summary>
|
||||
<param name="firstCharacter">The first character in the range.</param>
|
||||
<param name="lastCharacter">The last character in the range.</param>
|
||||
<exception cref="T:System.ArgumentOutOfRangeException">
|
||||
<paramref name="lastCharacter" /> precedes <paramref name="firstCharacter" />.</exception>
|
||||
<returns>A range that includes all characters between <paramref name="firstCharacter" /> and <paramref name="lastCharacter" />.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRange.FirstCodePoint">
|
||||
<summary>Gets the first code point in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange" /> instance.</summary>
|
||||
<returns>The first code point in the range.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRange.Length">
|
||||
<summary>Gets the number of code points in the range represented by this <see cref="T:System.Text.Unicode.UnicodeRange" /> instance.</summary>
|
||||
<returns>The number of code points in the range.</returns>
|
||||
</member>
|
||||
<member name="T:System.Text.Unicode.UnicodeRanges">
|
||||
<summary>Provides static properties that return predefined <see cref="T:System.Text.Unicode.UnicodeRange" /> instances that correspond to blocks from the Unicode specification.</summary>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.All">
|
||||
<summary>Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF).</summary>
|
||||
<returns>A range that consists of the entire BMP.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.AlphabeticPresentationForms">
|
||||
<summary>Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</summary>
|
||||
<returns>The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Arabic">
|
||||
<summary>Gets the Arabic Unicode block (U+0600-U+06FF).</summary>
|
||||
<returns>The Arabic Unicode block (U+0600-U+06FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ArabicExtendedA">
|
||||
<summary>Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF).</summary>
|
||||
<returns>The Arabic Extended-A Unicode block (U+08A0-U+08FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ArabicExtendedB">
|
||||
<summary>A <see cref="T:System.Text.Unicode.UnicodeRange" /> corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F).</summary>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsA">
|
||||
<summary>Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</summary>
|
||||
<returns>The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ArabicPresentationFormsB">
|
||||
<summary>Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</summary>
|
||||
<returns>The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ArabicSupplement">
|
||||
<summary>Gets the Arabic Supplement Unicode block (U+0750-U+077F).</summary>
|
||||
<returns>The Arabic Supplement Unicode block (U+0750-U+077F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Armenian">
|
||||
<summary>Gets the Armenian Unicode block (U+0530-U+058F).</summary>
|
||||
<returns>The Armenian Unicode block (U+0530-U+058F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Arrows">
|
||||
<summary>Gets the Arrows Unicode block (U+2190-U+21FF).</summary>
|
||||
<returns>The Arrows Unicode block (U+2190-U+21FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Balinese">
|
||||
<summary>Gets the Balinese Unicode block (U+1B00-U+1B7F).</summary>
|
||||
<returns>The Balinese Unicode block (U+1B00-U+1B7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Bamum">
|
||||
<summary>Gets the Bamum Unicode block (U+A6A0-U+A6FF).</summary>
|
||||
<returns>The Bamum Unicode block (U+A6A0-U+A6FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.BasicLatin">
|
||||
<summary>Gets the Basic Latin Unicode block (U+0000-U+007F).</summary>
|
||||
<returns>The Basic Latin Unicode block (U+0000-U+007F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Batak">
|
||||
<summary>Gets the Batak Unicode block (U+1BC0-U+1BFF).</summary>
|
||||
<returns>The Batak Unicode block (U+1BC0-U+1BFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Bengali">
|
||||
<summary>Gets the Bengali Unicode block (U+0980-U+09FF).</summary>
|
||||
<returns>The Bengali Unicode block (U+0980-U+09FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.BlockElements">
|
||||
<summary>Gets the Block Elements Unicode block (U+2580-U+259F).</summary>
|
||||
<returns>The Block Elements Unicode block (U+2580-U+259F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Bopomofo">
|
||||
<summary>Gets the Bopomofo Unicode block (U+3100-U+312F).</summary>
|
||||
<returns>The Bopomofo Unicode block (U+3105-U+312F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.BopomofoExtended">
|
||||
<summary>Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF).</summary>
|
||||
<returns>The Bopomofo Extended Unicode block (U+31A0-U+31BF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.BoxDrawing">
|
||||
<summary>Gets the Box Drawing Unicode block (U+2500-U+257F).</summary>
|
||||
<returns>The Box Drawing Unicode block (U+2500-U+257F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.BraillePatterns">
|
||||
<summary>Gets the Braille Patterns Unicode block (U+2800-U+28FF).</summary>
|
||||
<returns>The Braille Patterns Unicode block (U+2800-U+28FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Buginese">
|
||||
<summary>Gets the Buginese Unicode block (U+1A00-U+1A1F).</summary>
|
||||
<returns>The Buginese Unicode block (U+1A00-U+1A1F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Buhid">
|
||||
<summary>Gets the Buhid Unicode block (U+1740-U+175F).</summary>
|
||||
<returns>The Buhid Unicode block (U+1740-U+175F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Cham">
|
||||
<summary>Gets the Cham Unicode block (U+AA00-U+AA5F).</summary>
|
||||
<returns>The Cham Unicode block (U+AA00-U+AA5F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Cherokee">
|
||||
<summary>Gets the Cherokee Unicode block (U+13A0-U+13FF).</summary>
|
||||
<returns>The Cherokee Unicode block (U+13A0-U+13FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CherokeeSupplement">
|
||||
<summary>Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF).</summary>
|
||||
<returns>The Cherokee Supplement Unicode block (U+AB70-U+ABBF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibility">
|
||||
<summary>Gets the CJK Compatibility Unicode block (U+3300-U+33FF).</summary>
|
||||
<returns>The CJK Compatibility Unicode block (U+3300-U+33FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityForms">
|
||||
<summary>Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</summary>
|
||||
<returns>The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkCompatibilityIdeographs">
|
||||
<summary>Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</summary>
|
||||
<returns>The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkRadicalsSupplement">
|
||||
<summary>Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</summary>
|
||||
<returns>The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkStrokes">
|
||||
<summary>Gets the CJK Strokes Unicode block (U+31C0-U+31EF).</summary>
|
||||
<returns>The CJK Strokes Unicode block (U+31C0-U+31EF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkSymbolsandPunctuation">
|
||||
<summary>Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</summary>
|
||||
<returns>The CJK Symbols and Punctuation Unicode block (U+3000-U+303F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographs">
|
||||
<summary>Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</summary>
|
||||
<returns>The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CjkUnifiedIdeographsExtensionA">
|
||||
<summary>Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</summary>
|
||||
<returns>The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarks">
|
||||
<summary>Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F).</summary>
|
||||
<returns>The Combining Diacritical Marks Unicode block (U+0300-U+036F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksExtended">
|
||||
<summary>Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</summary>
|
||||
<returns>The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksforSymbols">
|
||||
<summary>Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</summary>
|
||||
<returns>The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CombiningDiacriticalMarksSupplement">
|
||||
<summary>Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</summary>
|
||||
<returns>The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CombiningHalfMarks">
|
||||
<summary>Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F).</summary>
|
||||
<returns>The Combining Half Marks Unicode block (U+FE20-U+FE2F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CommonIndicNumberForms">
|
||||
<summary>Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F).</summary>
|
||||
<returns>The Common Indic Number Forms Unicode block (U+A830-U+A83F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ControlPictures">
|
||||
<summary>Gets the Control Pictures Unicode block (U+2400-U+243F).</summary>
|
||||
<returns>The Control Pictures Unicode block (U+2400-U+243F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Coptic">
|
||||
<summary>Gets the Coptic Unicode block (U+2C80-U+2CFF).</summary>
|
||||
<returns>The Coptic Unicode block (U+2C80-U+2CFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CurrencySymbols">
|
||||
<summary>Gets the Currency Symbols Unicode block (U+20A0-U+20CF).</summary>
|
||||
<returns>The Currency Symbols Unicode block (U+20A0-U+20CF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Cyrillic">
|
||||
<summary>Gets the Cyrillic Unicode block (U+0400-U+04FF).</summary>
|
||||
<returns>The Cyrillic Unicode block (U+0400-U+04FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedA">
|
||||
<summary>Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</summary>
|
||||
<returns>The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedB">
|
||||
<summary>Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F).</summary>
|
||||
<returns>The Cyrillic Extended-B Unicode block (U+A640-U+A69F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CyrillicExtendedC">
|
||||
<summary>A <see cref="T:System.Text.Unicode.UnicodeRange" /> corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F).</summary>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.CyrillicSupplement">
|
||||
<summary>Gets the Cyrillic Supplement Unicode block (U+0500-U+052F).</summary>
|
||||
<returns>The Cyrillic Supplement Unicode block (U+0500-U+052F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Devanagari">
|
||||
<summary>Gets the Devangari Unicode block (U+0900-U+097F).</summary>
|
||||
<returns>The Devangari Unicode block (U+0900-U+097F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.DevanagariExtended">
|
||||
<summary>Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF).</summary>
|
||||
<returns>The Devanagari Extended Unicode block (U+A8E0-U+A8FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Dingbats">
|
||||
<summary>Gets the Dingbats Unicode block (U+2700-U+27BF).</summary>
|
||||
<returns>The Dingbats Unicode block (U+2700-U+27BF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.EnclosedAlphanumerics">
|
||||
<summary>Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</summary>
|
||||
<returns>The Enclosed Alphanumerics Unicode block (U+2460-U+24FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.EnclosedCjkLettersandMonths">
|
||||
<summary>Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</summary>
|
||||
<returns>The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Ethiopic">
|
||||
<summary>Gets the Ethiopic Unicode block (U+1200-U+137C).</summary>
|
||||
<returns>The Ethiopic Unicode block (U+1200-U+137C).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtended">
|
||||
<summary>Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF).</summary>
|
||||
<returns>The Ethipic Extended Unicode block (U+2D80-U+2DDF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.EthiopicExtendedA">
|
||||
<summary>Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</summary>
|
||||
<returns>The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.EthiopicSupplement">
|
||||
<summary>Gets the Ethiopic Supplement Unicode block (U+1380-U+1399).</summary>
|
||||
<returns>The Ethiopic Supplement Unicode block (U+1380-U+1399).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GeneralPunctuation">
|
||||
<summary>Gets the General Punctuation Unicode block (U+2000-U+206F).</summary>
|
||||
<returns>The General Punctuation Unicode block (U+2000-U+206F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GeometricShapes">
|
||||
<summary>Gets the Geometric Shapes Unicode block (U+25A0-U+25FF).</summary>
|
||||
<returns>The Geometric Shapes Unicode block (U+25A0-U+25FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Georgian">
|
||||
<summary>Gets the Georgian Unicode block (U+10A0-U+10FF).</summary>
|
||||
<returns>The Georgian Unicode block (U+10A0-U+10FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GeorgianExtended">
|
||||
<summary>A <see cref="T:System.Text.Unicode.UnicodeRange" /> corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF).</summary>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GeorgianSupplement">
|
||||
<summary>Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F).</summary>
|
||||
<returns>The Georgian Supplement Unicode block (U+2D00-U+2D2F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Glagolitic">
|
||||
<summary>Gets the Glagolitic Unicode block (U+2C00-U+2C5F).</summary>
|
||||
<returns>The Glagolitic Unicode block (U+2C00-U+2C5F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GreekandCoptic">
|
||||
<summary>Gets the Greek and Coptic Unicode block (U+0370-U+03FF).</summary>
|
||||
<returns>The Greek and Coptic Unicode block (U+0370-U+03FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.GreekExtended">
|
||||
<summary>Gets the Greek Extended Unicode block (U+1F00-U+1FFF).</summary>
|
||||
<returns>The Greek Extended Unicode block (U+1F00-U+1FFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Gujarati">
|
||||
<summary>Gets the Gujarti Unicode block (U+0A81-U+0AFF).</summary>
|
||||
<returns>The Gujarti Unicode block (U+0A81-U+0AFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Gurmukhi">
|
||||
<summary>Gets the Gurmukhi Unicode block (U+0A01-U+0A7F).</summary>
|
||||
<returns>The Gurmukhi Unicode block (U+0A01-U+0A7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HalfwidthandFullwidthForms">
|
||||
<summary>Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</summary>
|
||||
<returns>The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HangulCompatibilityJamo">
|
||||
<summary>Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</summary>
|
||||
<returns>The Hangul Compatibility Jamo Unicode block (U+3131-U+318F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HangulJamo">
|
||||
<summary>Gets the Hangul Jamo Unicode block (U+1100-U+11FF).</summary>
|
||||
<returns>The Hangul Jamo Unicode block (U+1100-U+11FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedA">
|
||||
<summary>Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F).</summary>
|
||||
<returns>The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HangulJamoExtendedB">
|
||||
<summary>Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</summary>
|
||||
<returns>The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.HangulSyllables">
|
||||
<summary>Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF).</summary>
|
||||
<returns>The Hangul Syllables Unicode block (U+AC00-U+D7AF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Hanunoo">
|
||||
<summary>Gets the Hanunoo Unicode block (U+1720-U+173F).</summary>
|
||||
<returns>The Hanunoo Unicode block (U+1720-U+173F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Hebrew">
|
||||
<summary>Gets the Hebrew Unicode block (U+0590-U+05FF).</summary>
|
||||
<returns>The Hebrew Unicode block (U+0590-U+05FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Hiragana">
|
||||
<summary>Gets the Hiragana Unicode block (U+3040-U+309F).</summary>
|
||||
<returns>The Hiragana Unicode block (U+3040-U+309F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.IdeographicDescriptionCharacters">
|
||||
<summary>Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</summary>
|
||||
<returns>The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.IpaExtensions">
|
||||
<summary>Gets the IPA Extensions Unicode block (U+0250-U+02AF).</summary>
|
||||
<returns>The IPA Extensions Unicode block (U+0250-U+02AF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Javanese">
|
||||
<summary>Gets the Javanese Unicode block (U+A980-U+A9DF).</summary>
|
||||
<returns>The Javanese Unicode block (U+A980-U+A9DF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Kanbun">
|
||||
<summary>Gets the Kanbun Unicode block (U+3190-U+319F).</summary>
|
||||
<returns>The Kanbun Unicode block (U+3190-U+319F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.KangxiRadicals">
|
||||
<summary>Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</summary>
|
||||
<returns>The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Kannada">
|
||||
<summary>Gets the Kannada Unicode block (U+0C81-U+0CFF).</summary>
|
||||
<returns>The Kannada Unicode block (U+0C81-U+0CFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Katakana">
|
||||
<summary>Gets the Katakana Unicode block (U+30A0-U+30FF).</summary>
|
||||
<returns>The Katakana Unicode block (U+30A0-U+30FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.KatakanaPhoneticExtensions">
|
||||
<summary>Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</summary>
|
||||
<returns>The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.KayahLi">
|
||||
<summary>Gets the Kayah Li Unicode block (U+A900-U+A92F).</summary>
|
||||
<returns>The Kayah Li Unicode block (U+A900-U+A92F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Khmer">
|
||||
<summary>Gets the Khmer Unicode block (U+1780-U+17FF).</summary>
|
||||
<returns>The Khmer Unicode block (U+1780-U+17FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.KhmerSymbols">
|
||||
<summary>Gets the Khmer Symbols Unicode block (U+19E0-U+19FF).</summary>
|
||||
<returns>The Khmer Symbols Unicode block (U+19E0-U+19FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Lao">
|
||||
<summary>Gets the Lao Unicode block (U+0E80-U+0EDF).</summary>
|
||||
<returns>The Lao Unicode block (U+0E80-U+0EDF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Latin1Supplement">
|
||||
<summary>Gets the Latin-1 Supplement Unicode block (U+0080-U+00FF).</summary>
|
||||
<returns>The Latin-1 Supplement Unicode block (U+0080-U+00FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedA">
|
||||
<summary>Gets the Latin Extended-A Unicode block (U+0100-U+017F).</summary>
|
||||
<returns>The Latin Extended-A Unicode block (U+0100-U+017F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedAdditional">
|
||||
<summary>Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF).</summary>
|
||||
<returns>The Latin Extended Additional Unicode block (U+1E00-U+1EFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedB">
|
||||
<summary>Gets the Latin Extended-B Unicode block (U+0180-U+024F).</summary>
|
||||
<returns>The Latin Extended-B Unicode block (U+0180-U+024F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedC">
|
||||
<summary>Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F).</summary>
|
||||
<returns>The Latin Extended-C Unicode block (U+2C60-U+2C7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedD">
|
||||
<summary>Gets the Latin Extended-D Unicode block (U+A720-U+A7FF).</summary>
|
||||
<returns>The Latin Extended-D Unicode block (U+A720-U+A7FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LatinExtendedE">
|
||||
<summary>Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F).</summary>
|
||||
<returns>The Latin Extended-E Unicode block (U+AB30-U+AB6F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Lepcha">
|
||||
<summary>Gets the Lepcha Unicode block (U+1C00-U+1C4F).</summary>
|
||||
<returns>The Lepcha Unicode block (U+1C00-U+1C4F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.LetterlikeSymbols">
|
||||
<summary>Gets the Letterlike Symbols Unicode block (U+2100-U+214F).</summary>
|
||||
<returns>The Letterlike Symbols Unicode block (U+2100-U+214F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Limbu">
|
||||
<summary>Gets the Limbu Unicode block (U+1900-U+194F).</summary>
|
||||
<returns>The Limbu Unicode block (U+1900-U+194F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Lisu">
|
||||
<summary>Gets the Lisu Unicode block (U+A4D0-U+A4FF).</summary>
|
||||
<returns>The Lisu Unicode block (U+A4D0-U+A4FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Malayalam">
|
||||
<summary>Gets the Malayalam Unicode block (U+0D00-U+0D7F).</summary>
|
||||
<returns>The Malayalam Unicode block (U+0D00-U+0D7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Mandaic">
|
||||
<summary>Gets the Mandaic Unicode block (U+0840-U+085F).</summary>
|
||||
<returns>The Mandaic Unicode block (U+0840-U+085F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MathematicalOperators">
|
||||
<summary>Gets the Mathematical Operators Unicode block (U+2200-U+22FF).</summary>
|
||||
<returns>The Mathematical Operators Unicode block (U+2200-U+22FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayek">
|
||||
<summary>Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF).</summary>
|
||||
<returns>The Meetei Mayek Unicode block (U+ABC0-U+ABFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MeeteiMayekExtensions">
|
||||
<summary>Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</summary>
|
||||
<returns>The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsA">
|
||||
<summary>Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</summary>
|
||||
<returns>The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousMathematicalSymbolsB">
|
||||
<summary>Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</summary>
|
||||
<returns>The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbols">
|
||||
<summary>Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF).</summary>
|
||||
<returns>The Miscellaneous Symbols Unicode block (U+2600-U+26FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousSymbolsandArrows">
|
||||
<summary>Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</summary>
|
||||
<returns>The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MiscellaneousTechnical">
|
||||
<summary>Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF).</summary>
|
||||
<returns>The Miscellaneous Technical Unicode block (U+2300-U+23FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.ModifierToneLetters">
|
||||
<summary>Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F).</summary>
|
||||
<returns>The Modifier Tone Letters Unicode block (U+A700-U+A71F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Mongolian">
|
||||
<summary>Gets the Mongolian Unicode block (U+1800-U+18AF).</summary>
|
||||
<returns>The Mongolian Unicode block (U+1800-U+18AF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Myanmar">
|
||||
<summary>Gets the Myanmar Unicode block (U+1000-U+109F).</summary>
|
||||
<returns>The Myanmar Unicode block (U+1000-U+109F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedA">
|
||||
<summary>Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</summary>
|
||||
<returns>The Myanmar Extended-A Unicode block (U+AA60-U+AA7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.MyanmarExtendedB">
|
||||
<summary>Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</summary>
|
||||
<returns>The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.NewTaiLue">
|
||||
<summary>Gets the New Tai Lue Unicode block (U+1980-U+19DF).</summary>
|
||||
<returns>The New Tai Lue Unicode block (U+1980-U+19DF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.NKo">
|
||||
<summary>Gets the NKo Unicode block (U+07C0-U+07FF).</summary>
|
||||
<returns>The NKo Unicode block (U+07C0-U+07FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.None">
|
||||
<summary>Gets an empty Unicode range.</summary>
|
||||
<returns>A Unicode range with no elements.</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.NumberForms">
|
||||
<summary>Gets the Number Forms Unicode block (U+2150-U+218F).</summary>
|
||||
<returns>The Number Forms Unicode block (U+2150-U+218F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Ogham">
|
||||
<summary>Gets the Ogham Unicode block (U+1680-U+169F).</summary>
|
||||
<returns>The Ogham Unicode block (U+1680-U+169F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.OlChiki">
|
||||
<summary>Gets the Ol Chiki Unicode block (U+1C50-U+1C7F).</summary>
|
||||
<returns>The Ol Chiki Unicode block (U+1C50-U+1C7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.OpticalCharacterRecognition">
|
||||
<summary>Gets the Optical Character Recognition Unicode block (U+2440-U+245F).</summary>
|
||||
<returns>The Optical Character Recognition Unicode block (U+2440-U+245F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Oriya">
|
||||
<summary>Gets the Oriya Unicode block (U+0B00-U+0B7F).</summary>
|
||||
<returns>The Oriya Unicode block (U+0B00-U+0B7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Phagspa">
|
||||
<summary>Gets the Phags-pa Unicode block (U+A840-U+A87F).</summary>
|
||||
<returns>The Phags-pa Unicode block (U+A840-U+A87F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensions">
|
||||
<summary>Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F).</summary>
|
||||
<returns>The Phonetic Extensions Unicode block (U+1D00-U+1D7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.PhoneticExtensionsSupplement">
|
||||
<summary>Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</summary>
|
||||
<returns>The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Rejang">
|
||||
<summary>Gets the Rejang Unicode block (U+A930-U+A95F).</summary>
|
||||
<returns>The Rejang Unicode block (U+A930-U+A95F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Runic">
|
||||
<summary>Gets the Runic Unicode block (U+16A0-U+16FF).</summary>
|
||||
<returns>The Runic Unicode block (U+16A0-U+16FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Samaritan">
|
||||
<summary>Gets the Samaritan Unicode block (U+0800-U+083F).</summary>
|
||||
<returns>The Samaritan Unicode block (U+0800-U+083F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Saurashtra">
|
||||
<summary>Gets the Saurashtra Unicode block (U+A880-U+A8DF).</summary>
|
||||
<returns>The Saurashtra Unicode block (U+A880-U+A8DF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Sinhala">
|
||||
<summary>Gets the Sinhala Unicode block (U+0D80-U+0DFF).</summary>
|
||||
<returns>The Sinhala Unicode block (U+0D80-U+0DFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SmallFormVariants">
|
||||
<summary>Gets the Small Form Variants Unicode block (U+FE50-U+FE6F).</summary>
|
||||
<returns>The Small Form Variants Unicode block (U+FE50-U+FE6F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SpacingModifierLetters">
|
||||
<summary>Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</summary>
|
||||
<returns>The Spacing Modifier Letters Unicode block (U+02B0-U+02FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Specials">
|
||||
<summary>Gets the Specials Unicode block (U+FFF0-U+FFFF).</summary>
|
||||
<returns>The Specials Unicode block (U+FFF0-U+FFFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Sundanese">
|
||||
<summary>Gets the Sundanese Unicode block (U+1B80-U+1BBF).</summary>
|
||||
<returns>The Sundanese Unicode block (U+1B80-U+1BBF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SundaneseSupplement">
|
||||
<summary>Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</summary>
|
||||
<returns>The Sundanese Supplement Unicode block (U+1CC0-U+1CCF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SuperscriptsandSubscripts">
|
||||
<summary>Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F).</summary>
|
||||
<returns>The Superscripts and Subscripts Unicode block (U+2070-U+209F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsA">
|
||||
<summary>Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</summary>
|
||||
<returns>The Supplemental Arrows-A Unicode block (U+27F0-U+27FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SupplementalArrowsB">
|
||||
<summary>Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F).</summary>
|
||||
<returns>The Supplemental Arrows-B Unicode block (U+2900-U+297F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SupplementalMathematicalOperators">
|
||||
<summary>Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</summary>
|
||||
<returns>The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SupplementalPunctuation">
|
||||
<summary>Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</summary>
|
||||
<returns>The Supplemental Punctuation Unicode block (U+2E00-U+2E7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SylotiNagri">
|
||||
<summary>Gets the Syloti Nagri Unicode block (U+A800-U+A82F).</summary>
|
||||
<returns>The Syloti Nagri Unicode block (U+A800-U+A82F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Syriac">
|
||||
<summary>Gets the Syriac Unicode block (U+0700-U+074F).</summary>
|
||||
<returns>The Syriac Unicode block (U+0700-U+074F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.SyriacSupplement">
|
||||
<summary>A <see cref="T:System.Text.Unicode.UnicodeRange" /> corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F).</summary>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Tagalog">
|
||||
<summary>Gets the Tagalog Unicode block (U+1700-U+171F).</summary>
|
||||
<returns>The Tagalog Unicode block (U+1700-U+171F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Tagbanwa">
|
||||
<summary>Gets the Tagbanwa Unicode block (U+1760-U+177F).</summary>
|
||||
<returns>The Tagbanwa Unicode block (U+1760-U+177F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.TaiLe">
|
||||
<summary>Gets the Tai Le Unicode block (U+1950-U+197F).</summary>
|
||||
<returns>The Tai Le Unicode block (U+1950-U+197F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.TaiTham">
|
||||
<summary>Gets the Tai Tham Unicode block (U+1A20-U+1AAF).</summary>
|
||||
<returns>The Tai Tham Unicode block (U+1A20-U+1AAF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.TaiViet">
|
||||
<summary>Gets the Tai Viet Unicode block (U+AA80-U+AADF).</summary>
|
||||
<returns>The Tai Viet Unicode block (U+AA80-U+AADF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Tamil">
|
||||
<summary>Gets the Tamil Unicode block (U+0B80-U+0BFF).</summary>
|
||||
<returns>The Tamil Unicode block (U+0B82-U+0BFA).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Telugu">
|
||||
<summary>Gets the Telugu Unicode block (U+0C00-U+0C7F).</summary>
|
||||
<returns>The Telugu Unicode block (U+0C00-U+0C7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Thaana">
|
||||
<summary>Gets the Thaana Unicode block (U+0780-U+07BF).</summary>
|
||||
<returns>The Thaana Unicode block (U+0780-U+07BF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Thai">
|
||||
<summary>Gets the Thai Unicode block (U+0E00-U+0E7F).</summary>
|
||||
<returns>The Thai Unicode block (U+0E00-U+0E7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Tibetan">
|
||||
<summary>Gets the Tibetan Unicode block (U+0F00-U+0FFF).</summary>
|
||||
<returns>The Tibetan Unicode block (U+0F00-U+0FFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Tifinagh">
|
||||
<summary>Gets the Tifinagh Unicode block (U+2D30-U+2D7F).</summary>
|
||||
<returns>The Tifinagh Unicode block (U+2D30-U+2D7F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabics">
|
||||
<summary>Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</summary>
|
||||
<returns>The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.UnifiedCanadianAboriginalSyllabicsExtended">
|
||||
<summary>Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</summary>
|
||||
<returns>The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.Vai">
|
||||
<summary>Gets the Vai Unicode block (U+A500-U+A63F).</summary>
|
||||
<returns>The Vai Unicode block (U+A500-U+A63F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.VariationSelectors">
|
||||
<summary>Gets the Variation Selectors Unicode block (U+FE00-U+FE0F).</summary>
|
||||
<returns>The Variation Selectors Unicode block (U+FE00-U+FE0F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.VedicExtensions">
|
||||
<summary>Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF).</summary>
|
||||
<returns>The Vedic Extensions Unicode block (U+1CD0-U+1CFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.VerticalForms">
|
||||
<summary>Gets the Vertical Forms Unicode block (U+FE10-U+FE1F).</summary>
|
||||
<returns>The Vertical Forms Unicode block (U+FE10-U+FE1F).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.YijingHexagramSymbols">
|
||||
<summary>Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</summary>
|
||||
<returns>The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.YiRadicals">
|
||||
<summary>Gets the Yi Radicals Unicode block (U+A490-U+A4CF).</summary>
|
||||
<returns>The Yi Radicals Unicode block (U+A490-U+A4CF).</returns>
|
||||
</member>
|
||||
<member name="P:System.Text.Unicode.UnicodeRanges.YiSyllables">
|
||||
<summary>Gets the Yi Syllables Unicode block (U+A000-U+A48F).</summary>
|
||||
<returns>The Yi Syllables Unicode block (U+A000-U+A48F).</returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
bin/Debug/System.Text.Json.dll
Normal file
BIN
bin/Debug/System.Text.Json.dll
Normal file
Binary file not shown.
6513
bin/Debug/System.Text.Json.xml
Normal file
6513
bin/Debug/System.Text.Json.xml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
bin/Debug/System.Threading.Tasks.Extensions.dll
Normal file
BIN
bin/Debug/System.Threading.Tasks.Extensions.dll
Normal file
Binary file not shown.
545
bin/Debug/System.Threading.Tasks.Extensions.xml
Normal file
545
bin/Debug/System.Threading.Tasks.Extensions.xml
Normal file
@ -0,0 +1,545 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>System.Threading.Tasks.Extensions</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute">
|
||||
<summary>
|
||||
Indicates the type of the async method builder that should be used by a language compiler to
|
||||
build the attributed type when used as the return type of an async method.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.#ctor(System.Type)">
|
||||
<summary>Initializes the <see cref="T:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute"/>.</summary>
|
||||
<param name="builderType">The <see cref="T:System.Type"/> of the associated builder.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.AsyncMethodBuilderAttribute.BuilderType">
|
||||
<summary>Gets the <see cref="T:System.Type"/> of the associated builder.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder">
|
||||
<summary>Represents a builder for asynchronous methods that return a <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder._methodBuilder">
|
||||
<summary>The <see cref="T:System.Runtime.CompilerServices.AsyncTaskMethodBuilder"/> to which most operations are delegated.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder._haveResult">
|
||||
<summary>true if completed synchronously and successfully; otherwise, false.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder._useBuilder">
|
||||
<summary>true if the builder should be used for setting/getting the result; otherwise, false.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.Create">
|
||||
<summary>Creates an instance of the <see cref="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder"/> struct.</summary>
|
||||
<returns>The initialized instance.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.Start``1(``0@)">
|
||||
<summary>Begins running the builder with the associated state machine.</summary>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="stateMachine">The state machine instance, passed by reference.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.SetStateMachine(System.Runtime.CompilerServices.IAsyncStateMachine)">
|
||||
<summary>Associates the builder with the specified state machine.</summary>
|
||||
<param name="stateMachine">The state machine instance to associate with the builder.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.SetResult">
|
||||
<summary>Marks the task as successfully completed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.SetException(System.Exception)">
|
||||
<summary>Marks the task as failed and binds the specified exception to the task.</summary>
|
||||
<param name="exception">The exception to bind to the task.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.Task">
|
||||
<summary>Gets the task for this builder.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.AwaitOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder.AwaitUnsafeOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1">
|
||||
<summary>Represents a builder for asynchronous methods that returns a <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
<typeparam name="TResult">The type of the result.</typeparam>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1._methodBuilder">
|
||||
<summary>The <see cref="T:System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1"/> to which most operations are delegated.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1._result">
|
||||
<summary>The result for this builder, if it's completed before any awaits occur.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1._haveResult">
|
||||
<summary>true if <see cref="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1._result"/> contains the synchronous result for the async method; otherwise, false.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1._useBuilder">
|
||||
<summary>true if the builder should be used for setting/getting the result; otherwise, false.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Create">
|
||||
<summary>Creates an instance of the <see cref="T:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1"/> struct.</summary>
|
||||
<returns>The initialized instance.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Start``1(``0@)">
|
||||
<summary>Begins running the builder with the associated state machine.</summary>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="stateMachine">The state machine instance, passed by reference.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetStateMachine(System.Runtime.CompilerServices.IAsyncStateMachine)">
|
||||
<summary>Associates the builder with the specified state machine.</summary>
|
||||
<param name="stateMachine">The state machine instance to associate with the builder.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetResult(`0)">
|
||||
<summary>Marks the task as successfully completed.</summary>
|
||||
<param name="result">The result to use to complete the task.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetException(System.Exception)">
|
||||
<summary>Marks the task as failed and binds the specified exception to the task.</summary>
|
||||
<param name="exception">The exception to bind to the task.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.Task">
|
||||
<summary>Gets the task for this builder.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">the awaiter</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.AwaitUnsafeOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">the awaiter</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable">
|
||||
<summary>Provides an awaitable type that enables configured awaits on a <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable._value">
|
||||
<summary>The wrapped <see cref="T:System.Threading.Tasks.Task"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.#ctor(System.Threading.Tasks.ValueTask)">
|
||||
<summary>Initializes the awaitable.</summary>
|
||||
<param name="value">The wrapped <see cref="T:System.Threading.Tasks.ValueTask"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.GetAwaiter">
|
||||
<summary>Returns an awaiter for this <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable"/> instance.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter">
|
||||
<summary>Provides an awaiter for a <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter._value">
|
||||
<summary>The value being awaited.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter.#ctor(System.Threading.Tasks.ValueTask)">
|
||||
<summary>Initializes the awaiter.</summary>
|
||||
<param name="value">The value to be awaited.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable"/> has completed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter.GetResult">
|
||||
<summary>Gets the result of the ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter.OnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter.UnsafeOnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable"/>.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1">
|
||||
<summary>Provides an awaitable type that enables configured awaits on a <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
<typeparam name="TResult">The type of the result produced.</typeparam>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1._value">
|
||||
<summary>The wrapped <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.#ctor(System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Initializes the awaitable.</summary>
|
||||
<param name="value">The wrapped <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.GetAwaiter">
|
||||
<summary>Returns an awaiter for this <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/> instance.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter">
|
||||
<summary>Provides an awaiter for a <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter._value">
|
||||
<summary>The value being awaited.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.#ctor(System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Initializes the awaiter.</summary>
|
||||
<param name="value">The value to be awaited.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/> has completed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.GetResult">
|
||||
<summary>Gets the result of the ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.OnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1.ConfiguredValueTaskAwaiter.UnsafeOnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for the <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/>.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ValueTaskAwaiter">
|
||||
<summary>Provides an awaiter for a <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ValueTaskAwaiter.s_invokeActionDelegate">
|
||||
<summary>Shim used to invoke an <see cref="T:System.Action"/> passed as the state argument to a <see cref="T:System.Action`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ValueTaskAwaiter._value">
|
||||
<summary>The value being awaited.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter.#ctor(System.Threading.Tasks.ValueTask)">
|
||||
<summary>Initializes the awaiter.</summary>
|
||||
<param name="value">The value to be awaited.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ValueTaskAwaiter.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask"/> has completed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter.GetResult">
|
||||
<summary>Gets the result of the ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter.OnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for this ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter.UnsafeOnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for this ValueTask.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ValueTaskAwaiter`1">
|
||||
<summary>Provides an awaiter for a <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.CompilerServices.ValueTaskAwaiter`1._value">
|
||||
<summary>The value being awaited.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.#ctor(System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Initializes the awaiter.</summary>
|
||||
<param name="value">The value to be awaited.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ValueTaskAwaiter`1.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask`1"/> has completed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult">
|
||||
<summary>Gets the result of the ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.OnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for this ValueTask.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ValueTaskAwaiter`1.UnsafeOnCompleted(System.Action)">
|
||||
<summary>Schedules the continuation action for this ValueTask.</summary>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags">
|
||||
<summary>
|
||||
Flags passed from <see cref="T:System.Threading.Tasks.ValueTask"/> and <see cref="T:System.Threading.Tasks.ValueTask`1"/> to
|
||||
<see cref="M:System.Threading.Tasks.Sources.IValueTaskSource.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)"/> and <see cref="M:System.Threading.Tasks.Sources.IValueTaskSource`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)"/>
|
||||
to control behavior.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags.None">
|
||||
<summary>
|
||||
No requirements are placed on how the continuation is invoked.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags.UseSchedulingContext">
|
||||
<summary>
|
||||
Set if OnCompleted should capture the current scheduling context (e.g. SynchronizationContext)
|
||||
and use it when queueing the continuation for execution. If this is not set, the implementation
|
||||
may choose to execute the continuation in an arbitrary location.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags.FlowExecutionContext">
|
||||
<summary>
|
||||
Set if OnCompleted should capture the current ExecutionContext and use it to run the continuation.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.Sources.ValueTaskSourceStatus">
|
||||
<summary>Indicates the status of an <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/> or <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceStatus.Pending">
|
||||
<summary>The operation has not yet completed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceStatus.Succeeded">
|
||||
<summary>The operation completed successfully.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceStatus.Faulted">
|
||||
<summary>The operation completed with an error.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ValueTaskSourceStatus.Canceled">
|
||||
<summary>The operation completed due to cancellation.</summary>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.Sources.IValueTaskSource">
|
||||
<summary>Represents an object that can be wrapped by a <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource.GetStatus(System.Int16)">
|
||||
<summary>Gets the status of the current operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)">
|
||||
<summary>Schedules the continuation action for this <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
<param name="continuation">The continuation to invoke when the operation has completed.</param>
|
||||
<param name="state">The state object to pass to <paramref name="continuation"/> when it's invoked.</param>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
<param name="flags">The flags describing the behavior of the continuation.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource.GetResult(System.Int16)">
|
||||
<summary>Gets the result of the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.Sources.IValueTaskSource`1">
|
||||
<summary>Represents an object that can be wrapped by a <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
<typeparam name="TResult">Specifies the type of data returned from the object.</typeparam>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource`1.GetStatus(System.Int16)">
|
||||
<summary>Gets the status of the current operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)">
|
||||
<summary>Schedules the continuation action for this <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
<param name="continuation">The continuation to invoke when the operation has completed.</param>
|
||||
<param name="state">The state object to pass to <paramref name="continuation"/> when it's invoked.</param>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
<param name="flags">The flags describing the behavior of the continuation.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.IValueTaskSource`1.GetResult(System.Int16)">
|
||||
<summary>Gets the result of the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.ValueTask">
|
||||
<summary>Provides an awaitable result of an asynchronous operation.</summary>
|
||||
<remarks>
|
||||
<see cref="T:System.Threading.Tasks.ValueTask"/>s are meant to be directly awaited. To do more complicated operations with them, a <see cref="T:System.Threading.Tasks.Task"/>
|
||||
should be extracted using <see cref="M:System.Threading.Tasks.ValueTask.AsTask"/>. Such operations might include caching an instance to be awaited later,
|
||||
registering multiple continuations with a single operation, awaiting the same task multiple times, and using combinators over
|
||||
multiple operations.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask.s_canceledTask">
|
||||
<summary>A task canceled using `new CancellationToken(true)`.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask.CompletedTask">
|
||||
<summary>A successfully completed task.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask._obj">
|
||||
<summary>null if representing a successful synchronous completion, otherwise a <see cref="T:System.Threading.Tasks.Task"/> or a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask._token">
|
||||
<summary>Opaque value passed through to the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask._continueOnCapturedContext">
|
||||
<summary>true to continue on the capture context; otherwise, true.</summary>
|
||||
<remarks>Stored in the <see cref="T:System.Threading.Tasks.ValueTask"/> rather than in the configured awaiter to utilize otherwise padding space.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.#ctor(System.Threading.Tasks.Task)">
|
||||
<summary>Initialize the <see cref="T:System.Threading.Tasks.ValueTask"/> with a <see cref="T:System.Threading.Tasks.Task"/> that represents the operation.</summary>
|
||||
<param name="task">The task.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.#ctor(System.Threading.Tasks.Sources.IValueTaskSource,System.Int16)">
|
||||
<summary>Initialize the <see cref="T:System.Threading.Tasks.ValueTask"/> with a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/> object that represents the operation.</summary>
|
||||
<param name="source">The source.</param>
|
||||
<param name="token">Opaque value passed through to the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.GetHashCode">
|
||||
<summary>Returns the hash code for this instance.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.Equals(System.Object)">
|
||||
<summary>Returns a value indicating whether this value is equal to a specified <see cref="T:System.Object"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.Equals(System.Threading.Tasks.ValueTask)">
|
||||
<summary>Returns a value indicating whether this value is equal to a specified <see cref="T:System.Threading.Tasks.ValueTask"/> value.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.op_Equality(System.Threading.Tasks.ValueTask,System.Threading.Tasks.ValueTask)">
|
||||
<summary>Returns a value indicating whether two <see cref="T:System.Threading.Tasks.ValueTask"/> values are equal.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.op_Inequality(System.Threading.Tasks.ValueTask,System.Threading.Tasks.ValueTask)">
|
||||
<summary>Returns a value indicating whether two <see cref="T:System.Threading.Tasks.ValueTask"/> values are not equal.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.AsTask">
|
||||
<summary>
|
||||
Gets a <see cref="T:System.Threading.Tasks.Task"/> object to represent this ValueTask.
|
||||
</summary>
|
||||
<remarks>
|
||||
It will either return the wrapped task object if one exists, or it'll
|
||||
manufacture a new task object to represent the result.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.Preserve">
|
||||
<summary>Gets a <see cref="T:System.Threading.Tasks.ValueTask"/> that may be used at any point in the future.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.GetTaskForValueTaskSource(System.Threading.Tasks.Sources.IValueTaskSource)">
|
||||
<summary>Creates a <see cref="T:System.Threading.Tasks.Task"/> to represent the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
<remarks>
|
||||
The <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/> is passed in rather than reading and casting <see cref="F:System.Threading.Tasks.ValueTask._obj"/>
|
||||
so that the caller can pass in an object it's already validated.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.ValueTask.ValueTaskSourceAsTask">
|
||||
<summary>Type used to create a <see cref="T:System.Threading.Tasks.Task"/> to represent a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask.ValueTaskSourceAsTask._source">
|
||||
<summary>The associated <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask.ValueTaskSourceAsTask._token">
|
||||
<summary>The token to pass through to operations on <see cref="F:System.Threading.Tasks.ValueTask.ValueTaskSourceAsTask._source"/></summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask"/> represents a completed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask.IsCompletedSuccessfully">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask"/> represents a successfully completed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask.IsFaulted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask"/> represents a failed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask.IsCanceled">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask"/> represents a canceled operation.</summary>
|
||||
<remarks>
|
||||
If the <see cref="T:System.Threading.Tasks.ValueTask"/> is backed by a result or by a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>,
|
||||
this will always return false. If it's backed by a <see cref="T:System.Threading.Tasks.Task"/>, it'll return the
|
||||
value of the task's <see cref="P:System.Threading.Tasks.Task.IsCanceled"/> property.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.ThrowIfCompletedUnsuccessfully">
|
||||
<summary>Throws the exception that caused the <see cref="T:System.Threading.Tasks.ValueTask"/> to fail. If it completed successfully, nothing is thrown.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.GetAwaiter">
|
||||
<summary>Gets an awaiter for this <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask.ConfigureAwait(System.Boolean)">
|
||||
<summary>Configures an awaiter for this <see cref="T:System.Threading.Tasks.ValueTask"/>.</summary>
|
||||
<param name="continueOnCapturedContext">
|
||||
true to attempt to marshal the continuation back to the captured context; otherwise, false.
|
||||
</param>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.ValueTask`1">
|
||||
<summary>Provides a value type that can represent a synchronously available value or a task object.</summary>
|
||||
<typeparam name="TResult">Specifies the type of the result.</typeparam>
|
||||
<remarks>
|
||||
<see cref="T:System.Threading.Tasks.ValueTask`1"/>s are meant to be directly awaited. To do more complicated operations with them, a <see cref="T:System.Threading.Tasks.Task"/>
|
||||
should be extracted using <see cref="M:System.Threading.Tasks.ValueTask`1.AsTask"/> or <see cref="M:System.Threading.Tasks.ValueTask`1.Preserve"/>. Such operations might include caching an instance to
|
||||
be awaited later, registering multiple continuations with a single operation, awaiting the same task multiple times, and using
|
||||
combinators over multiple operations.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1.s_canceledTask">
|
||||
<summary>A task canceled using `new CancellationToken(true)`. Lazily created only when first needed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1._obj">
|
||||
<summary>null if <see cref="F:System.Threading.Tasks.ValueTask`1._result"/> has the result, otherwise a <see cref="T:System.Threading.Tasks.Task`1"/> or a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1._result">
|
||||
<summary>The result to be used if the operation completed successfully synchronously.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1._token">
|
||||
<summary>Opaque value passed through to the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1._continueOnCapturedContext">
|
||||
<summary>true to continue on the captured context; otherwise, false.</summary>
|
||||
<remarks>Stored in the <see cref="T:System.Threading.Tasks.ValueTask`1"/> rather than in the configured awaiter to utilize otherwise padding space.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(`0)">
|
||||
<summary>Initialize the <see cref="T:System.Threading.Tasks.ValueTask`1"/> with a <typeparamref name="TResult"/> result value.</summary>
|
||||
<param name="result">The result.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(System.Threading.Tasks.Task{`0})">
|
||||
<summary>Initialize the <see cref="T:System.Threading.Tasks.ValueTask`1"/> with a <see cref="T:System.Threading.Tasks.Task`1"/> that represents the operation.</summary>
|
||||
<param name="task">The task.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(System.Threading.Tasks.Sources.IValueTaskSource{`0},System.Int16)">
|
||||
<summary>Initialize the <see cref="T:System.Threading.Tasks.ValueTask`1"/> with a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/> object that represents the operation.</summary>
|
||||
<param name="source">The source.</param>
|
||||
<param name="token">Opaque value passed through to the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.#ctor(System.Object,`0,System.Int16,System.Boolean)">
|
||||
<summary>Non-verified initialization of the struct to the specified values.</summary>
|
||||
<param name="obj">The object.</param>
|
||||
<param name="result">The result.</param>
|
||||
<param name="token">The token.</param>
|
||||
<param name="continueOnCapturedContext">true to continue on captured context; otherwise, false.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.GetHashCode">
|
||||
<summary>Returns the hash code for this instance.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Object)">
|
||||
<summary>Returns a value indicating whether this value is equal to a specified <see cref="T:System.Object"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.Equals(System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Returns a value indicating whether this value is equal to a specified <see cref="T:System.Threading.Tasks.ValueTask`1"/> value.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.op_Equality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Returns a value indicating whether two <see cref="T:System.Threading.Tasks.ValueTask`1"/> values are equal.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.op_Inequality(System.Threading.Tasks.ValueTask{`0},System.Threading.Tasks.ValueTask{`0})">
|
||||
<summary>Returns a value indicating whether two <see cref="T:System.Threading.Tasks.ValueTask`1"/> values are not equal.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.AsTask">
|
||||
<summary>
|
||||
Gets a <see cref="T:System.Threading.Tasks.Task`1"/> object to represent this ValueTask.
|
||||
</summary>
|
||||
<remarks>
|
||||
It will either return the wrapped task object if one exists, or it'll
|
||||
manufacture a new task object to represent the result.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.Preserve">
|
||||
<summary>Gets a <see cref="T:System.Threading.Tasks.ValueTask`1"/> that may be used at any point in the future.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.GetTaskForValueTaskSource(System.Threading.Tasks.Sources.IValueTaskSource{`0})">
|
||||
<summary>Creates a <see cref="T:System.Threading.Tasks.Task`1"/> to represent the <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
<remarks>
|
||||
The <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/> is passed in rather than reading and casting <see cref="F:System.Threading.Tasks.ValueTask`1._obj"/>
|
||||
so that the caller can pass in an object it's already validated.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.ValueTask`1.ValueTaskSourceAsTask">
|
||||
<summary>Type used to create a <see cref="T:System.Threading.Tasks.Task`1"/> to represent a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1.ValueTaskSourceAsTask._source">
|
||||
<summary>The associated <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.ValueTask`1.ValueTaskSourceAsTask._token">
|
||||
<summary>The token to pass through to operations on <see cref="F:System.Threading.Tasks.ValueTask`1.ValueTaskSourceAsTask._source"/></summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompleted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask`1"/> represents a completed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask`1.IsCompletedSuccessfully">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask`1"/> represents a successfully completed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask`1.IsFaulted">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask`1"/> represents a failed operation.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask`1.IsCanceled">
|
||||
<summary>Gets whether the <see cref="T:System.Threading.Tasks.ValueTask`1"/> represents a canceled operation.</summary>
|
||||
<remarks>
|
||||
If the <see cref="T:System.Threading.Tasks.ValueTask`1"/> is backed by a result or by a <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>,
|
||||
this will always return false. If it's backed by a <see cref="T:System.Threading.Tasks.Task"/>, it'll return the
|
||||
value of the task's <see cref="P:System.Threading.Tasks.Task.IsCanceled"/> property.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.ValueTask`1.Result">
|
||||
<summary>Gets the result.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.GetAwaiter">
|
||||
<summary>Gets an awaiter for this <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.ConfigureAwait(System.Boolean)">
|
||||
<summary>Configures an awaiter for this <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
<param name="continueOnCapturedContext">
|
||||
true to attempt to marshal the continuation back to the captured context; otherwise, false.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.ValueTask`1.ToString">
|
||||
<summary>Gets a string-representation of this <see cref="T:System.Threading.Tasks.ValueTask`1"/>.</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
@ -0,0 +1,4 @@
|
||||
// <autogenerated />
|
||||
using System;
|
||||
using System.Reflection;
|
||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
|
||||
BIN
obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
BIN
obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
Binary file not shown.
BIN
obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
BIN
obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
Binary file not shown.
BIN
obj/Debug/LevelCode.License.Forms.FrmGerarLicencaKey.resources
Normal file
BIN
obj/Debug/LevelCode.License.Forms.FrmGerarLicencaKey.resources
Normal file
Binary file not shown.
0
obj/Debug/Levelcod.F486EB99.Up2Date
Normal file
0
obj/Debug/Levelcod.F486EB99.Up2Date
Normal file
BIN
obj/Debug/Levelcode-licence.csproj.AssemblyReference.cache
Normal file
BIN
obj/Debug/Levelcode-licence.csproj.AssemblyReference.cache
Normal file
Binary file not shown.
@ -0,0 +1 @@
|
||||
d799d3b841734058f4581b731fa03da508beaa67d4b72d49c104c0d8f94631f4
|
||||
31
obj/Debug/Levelcode-licence.csproj.FileListAbsolute.txt
Normal file
31
obj/Debug/Levelcode-licence.csproj.FileListAbsolute.txt
Normal file
@ -0,0 +1,31 @@
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\Levelcode-licence.exe.config
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\Levelcode-licence.exe
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\Levelcode-licence.pdb
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.csproj.AssemblyReference.cache
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode_licence.Properties.Resources.resources
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.csproj.GenerateResource.cache
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.csproj.CoreCompileInputs.cache
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.exe
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.pdb
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\Microsoft.Bcl.AsyncInterfaces.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Buffers.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.IO.Pipelines.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Memory.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Numerics.Vectors.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Text.Encodings.Web.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Text.Json.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Threading.Tasks.Extensions.dll
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\Microsoft.Bcl.AsyncInterfaces.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Buffers.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.IO.Pipelines.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Memory.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Numerics.Vectors.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Runtime.CompilerServices.Unsafe.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Text.Encodings.Web.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Text.Json.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\bin\Debug\System.Threading.Tasks.Extensions.xml
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode-licence.exe.config
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcode_licence.FrmPrincipal.resources
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\Levelcod.F486EB99.Up2Date
|
||||
C:\Users\Nicolas Felipe\Desktop\Levelcode-license\Levelcode-licence\obj\Debug\LevelCode.License.Forms.FrmGerarLicencaKey.resources
|
||||
BIN
obj/Debug/Levelcode-licence.csproj.GenerateResource.cache
Normal file
BIN
obj/Debug/Levelcode-licence.csproj.GenerateResource.cache
Normal file
Binary file not shown.
BIN
obj/Debug/Levelcode-licence.exe
Normal file
BIN
obj/Debug/Levelcode-licence.exe
Normal file
Binary file not shown.
17
obj/Debug/Levelcode-licence.exe.config
Normal file
17
obj/Debug/Levelcode-licence.exe.config
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
|
||||
<connectionStrings>
|
||||
<add name="SQL"
|
||||
connectionString="Data Source=206.42.13.180;Initial Catalog=Levelcode-ModasMVP;User ID=nicolas;Password=Nike12122020*##;" />
|
||||
</connectionStrings>
|
||||
<appSettings>
|
||||
<add key="PrivateKeyPath" value="C:\LevelCode\Levelcode-license\private.key"/>
|
||||
</appSettings>
|
||||
|
||||
|
||||
</configuration>
|
||||
BIN
obj/Debug/Levelcode-licence.pdb
Normal file
BIN
obj/Debug/Levelcode-licence.pdb
Normal file
Binary file not shown.
BIN
obj/Debug/Levelcode_licence.FrmPrincipal.resources
Normal file
BIN
obj/Debug/Levelcode_licence.FrmPrincipal.resources
Normal file
Binary file not shown.
BIN
obj/Debug/Levelcode_licence.Properties.Resources.resources
Normal file
BIN
obj/Debug/Levelcode_licence.Properties.Resources.resources
Normal file
Binary file not shown.
13
packages.config
Normal file
13
packages.config
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="10.0.1" targetFramework="net48" />
|
||||
<package id="System.Buffers" version="4.6.1" targetFramework="net48" />
|
||||
<package id="System.IO.Pipelines" version="10.0.1" targetFramework="net48" />
|
||||
<package id="System.Memory" version="4.6.3" targetFramework="net48" />
|
||||
<package id="System.Numerics.Vectors" version="4.6.1" targetFramework="net48" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="6.1.2" targetFramework="net48" />
|
||||
<package id="System.Text.Encodings.Web" version="10.0.1" targetFramework="net48" />
|
||||
<package id="System.Text.Json" version="10.0.1" targetFramework="net48" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.6.3" targetFramework="net48" />
|
||||
<package id="System.ValueTuple" version="4.6.1" targetFramework="net48" />
|
||||
</packages>
|
||||
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/.signature.p7s
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/.signature.p7s
vendored
Normal file
Binary file not shown.
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/Icon.png
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/Icon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/Microsoft.Bcl.AsyncInterfaces.10.0.1.nupkg
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/Microsoft.Bcl.AsyncInterfaces.10.0.1.nupkg
vendored
Normal file
Binary file not shown.
64
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/PACKAGE.md
vendored
Normal file
64
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/PACKAGE.md
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
## About
|
||||
|
||||
As of C# 8, the C# language has support for producing and consuming asynchronous iterators. The library types in support of those features are available in .NET Core 3.0 and newer as well as in .NET Standard 2.1. This library provides the necessary definitions of those types to support these language features on .NET Framework and on .NET Standard 2.0. This library is not necessary nor recommended when targeting versions of .NET that include the relevant support.
|
||||
|
||||
## Key Features
|
||||
|
||||
<!-- The key features of this package -->
|
||||
|
||||
* Enables the use of C# async iterators on older .NET platforms
|
||||
|
||||
## How to Use
|
||||
|
||||
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
|
||||
|
||||
```C#
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
internal static class Program
|
||||
{
|
||||
private static async Task Main()
|
||||
{
|
||||
Console.WriteLine("Starting...");
|
||||
await foreach (var value in GetValuesAsync())
|
||||
{
|
||||
Console.WriteLine(value);
|
||||
}
|
||||
Console.WriteLine("Finished!");
|
||||
|
||||
static async IAsyncEnumerable<int> GetValuesAsync()
|
||||
{
|
||||
for (int i = 0; i < 10; i++)
|
||||
{
|
||||
await Task.Delay(TimeSpan.FromSeconds(1));
|
||||
yield return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Main Types
|
||||
|
||||
<!-- The main types provided in this library -->
|
||||
|
||||
The main types provided by this library are:
|
||||
|
||||
* `IAsyncEnumerable<T>`
|
||||
* `IAsyncEnumerator<T>`
|
||||
* `IAsyncDisposable<T>`
|
||||
|
||||
## Additional Documentation
|
||||
|
||||
<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->
|
||||
|
||||
* [C# Feature Specification](https://learn.microsoft.com/dotnet/csharp/language-reference/proposals/csharp-8.0/async-streams)
|
||||
* [Walkthrough article](https://learn.microsoft.com/archive/msdn-magazine/2019/november/csharp-iterating-with-async-enumerables-in-csharp-8)
|
||||
|
||||
## Feedback & Contributing
|
||||
|
||||
<!-- How to provide feedback on this package and contribute to it -->
|
||||
|
||||
Microsoft.Bcl.AsyncInterfaces is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
|
||||
1418
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/THIRD-PARTY-NOTICES.TXT
vendored
Normal file
1418
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/THIRD-PARTY-NOTICES.TXT
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,6 @@
|
||||
<Project InitialTargets="NETStandardCompatError_Microsoft_Bcl_AsyncInterfaces_net462">
|
||||
<Target Name="NETStandardCompatError_Microsoft_Bcl_AsyncInterfaces_net462"
|
||||
Condition="'$(SuppressTfmSupportBuildWarnings)' == ''">
|
||||
<Warning Text="Microsoft.Bcl.AsyncInterfaces 10.0.1 doesn't support $(TargetFramework) and has not been tested with it. Consider upgrading your TargetFramework to net462 or later. You may also set <SuppressTfmSupportBuildWarnings>true</SuppressTfmSupportBuildWarnings> in the project file to ignore this warning and attempt to run in this unsupported configuration at your own risk." />
|
||||
</Target>
|
||||
</Project>
|
||||
0
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/buildTransitive/net462/_._
vendored
Normal file
0
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/buildTransitive/net462/_._
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll
vendored
Normal file
Binary file not shown.
420
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml
vendored
Normal file
420
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml
vendored
Normal file
@ -0,0 +1,420 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>Microsoft.Bcl.AsyncInterfaces</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1">
|
||||
<summary>Provides the core logic for implementing a manual-reset <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource"/> or <see cref="T:System.Threading.Tasks.Sources.IValueTaskSource`1"/>.</summary>
|
||||
<typeparam name="TResult"></typeparam>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuation">
|
||||
<summary>
|
||||
The callback to invoke when the operation completes if <see cref="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)"/> was called before the operation completed,
|
||||
or <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCoreShared.s_sentinel"/> if the operation completed before a callback was supplied,
|
||||
or null if a callback hasn't yet been provided and the operation hasn't yet completed.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuationState">
|
||||
<summary>State to pass to <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._continuation"/>.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._executionContext">
|
||||
<summary><see cref="T:System.Threading.ExecutionContext"/> to flow to the callback, or null if no flowing is required.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._capturedContext">
|
||||
<summary>
|
||||
A "captured" <see cref="T:System.Threading.SynchronizationContext"/> or <see cref="T:System.Threading.Tasks.TaskScheduler"/> with which to invoke the callback,
|
||||
or null if no special context is required.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._completed">
|
||||
<summary>Whether the current operation has completed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._result">
|
||||
<summary>The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._error">
|
||||
<summary>The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.</summary>
|
||||
</member>
|
||||
<member name="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._version">
|
||||
<summary>The current version of this value, used to help prevent misuse.</summary>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.RunContinuationsAsynchronously">
|
||||
<summary>Gets or sets whether to force continuations to run asynchronously.</summary>
|
||||
<remarks>Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.Reset">
|
||||
<summary>Resets to prepare for the next operation.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SetResult(`0)">
|
||||
<summary>Completes with a successful result.</summary>
|
||||
<param name="result">The result.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SetException(System.Exception)">
|
||||
<summary>Complets with an error.</summary>
|
||||
<param name="error"></param>
|
||||
</member>
|
||||
<member name="P:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.Version">
|
||||
<summary>Gets the operation version.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.GetStatus(System.Int16)">
|
||||
<summary>Gets the status of the operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.GetResult(System.Int16)">
|
||||
<summary>Gets the result of the operation.</summary>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.OnCompleted(System.Action{System.Object},System.Object,System.Int16,System.Threading.Tasks.Sources.ValueTaskSourceOnCompletedFlags)">
|
||||
<summary>Schedules the continuation action for this operation.</summary>
|
||||
<param name="continuation">The continuation to invoke when the operation has completed.</param>
|
||||
<param name="state">The state object to pass to <paramref name="continuation"/> when it's invoked.</param>
|
||||
<param name="token">Opaque value that was provided to the <see cref="T:System.Threading.Tasks.ValueTask"/>'s constructor.</param>
|
||||
<param name="flags">The flags describing the behavior of the continuation.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.ValidateToken(System.Int16)">
|
||||
<summary>Ensures that the specified token matches the current version.</summary>
|
||||
<param name="token">The token supplied by <see cref="T:System.Threading.Tasks.ValueTask"/>.</param>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.SignalCompletion">
|
||||
<summary>Signals that the operation has completed. Invoked after the result or error has been set.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1.InvokeContinuation">
|
||||
<summary>
|
||||
Invokes the continuation with the appropriate captured context / scheduler.
|
||||
This assumes that if <see cref="F:System.Threading.Tasks.Sources.ManualResetValueTaskSourceCore`1._executionContext"/> is not null we're already
|
||||
running within that <see cref="T:System.Threading.ExecutionContext"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Threading.Tasks.TaskAsyncEnumerableExtensions">
|
||||
<summary>Provides a set of static methods for configuring <see cref="T:System.Threading.Tasks.Task"/>-related behaviors on asynchronous enumerables and disposables.</summary>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.ConfigureAwait(System.IAsyncDisposable,System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async disposable will be performed.</summary>
|
||||
<param name="source">The source async disposable.</param>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured async disposable.</returns>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.ConfigureAwait``1(System.Collections.Generic.IAsyncEnumerable{``0},System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async iteration will be performed.</summary>
|
||||
<typeparam name="T">The type of the objects being iterated.</typeparam>
|
||||
<param name="source">The source enumerable being iterated.</param>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
</member>
|
||||
<member name="M:System.Threading.Tasks.TaskAsyncEnumerableExtensions.WithCancellation``1(System.Collections.Generic.IAsyncEnumerable{``0},System.Threading.CancellationToken)">
|
||||
<summary>Sets the <see cref="T:System.Threading.CancellationToken"/> to be passed to <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)"/> when iterating.</summary>
|
||||
<typeparam name="T">The type of the objects being iterated.</typeparam>
|
||||
<param name="source">The source enumerable being iterated.</param>
|
||||
<param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder">
|
||||
<summary>Represents a builder for asynchronous iterators.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.Create">
|
||||
<summary>Creates an instance of the <see cref="T:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder"/> struct.</summary>
|
||||
<returns>The initialized instance.</returns>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.MoveNext``1(``0@)">
|
||||
<summary>Invokes <see cref="M:System.Runtime.CompilerServices.IAsyncStateMachine.MoveNext"/> on the state machine while guarding the <see cref="T:System.Threading.ExecutionContext"/>.</summary>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="stateMachine">The state machine instance, passed by reference.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.AwaitOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.AwaitUnsafeOnCompleted``2(``0@,``1@)">
|
||||
<summary>Schedules the state machine to proceed to the next action when the specified awaiter completes.</summary>
|
||||
<typeparam name="TAwaiter">The type of the awaiter.</typeparam>
|
||||
<typeparam name="TStateMachine">The type of the state machine.</typeparam>
|
||||
<param name="awaiter">The awaiter.</param>
|
||||
<param name="stateMachine">The state machine.</param>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.Complete">
|
||||
<summary>Marks iteration as being completed, whether successfully or otherwise.</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.AsyncIteratorMethodBuilder.ObjectIdForDebugger">
|
||||
<summary>Gets an object that may be used to uniquely identify this builder to the debugger.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute">
|
||||
<summary>Indicates whether a method is an asynchronous iterator.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute.#ctor(System.Type)">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.AsyncIteratorStateMachineAttribute"/> class.</summary>
|
||||
<param name="stateMachineType">The type object for the underlying state machine type that's used to implement a state machine method.</param>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredAsyncDisposable">
|
||||
<summary>Provides a type that can be used to configure how awaits on an <see cref="T:System.IAsyncDisposable"/> are performed.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredAsyncDisposable.DisposeAsync">
|
||||
<summary>Asynchronously releases the unmanaged resources used by the <see cref="T:System.Runtime.CompilerServices.ConfiguredAsyncDisposable" />.</summary>
|
||||
<returns>A task that represents the asynchronous dispose operation.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1">
|
||||
<summary>Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.ConfigureAwait(System.Boolean)">
|
||||
<summary>Configures how awaits on the tasks returned from an async iteration will be performed.</summary>
|
||||
<param name="continueOnCapturedContext"><see langword="true" /> to capture and marshal back to the current context; otherwise, <see langword="false" />.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
<remarks>This will replace any previous value set by <see cref="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.ConfigureAwait(System.Boolean)"/> for this iteration.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.WithCancellation(System.Threading.CancellationToken)">
|
||||
<summary>Sets the <see cref="T:System.Threading.CancellationToken"/> to be passed to <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)"/> when iterating.</summary>
|
||||
<param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to use.</param>
|
||||
<returns>The configured enumerable.</returns>
|
||||
<remarks>This will replace any previous <see cref="T:System.Threading.CancellationToken"/> set by <see cref="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.WithCancellation(System.Threading.CancellationToken)"/> for this iteration.</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.GetAsyncEnumerator">
|
||||
<summary>Returns an enumerator that iterates asynchronously through collections that enables cancelable iteration and configured awaits.</summary>
|
||||
<returns>An enumerator for the <see cref="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1" /> class.</returns>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator">
|
||||
<summary>Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.MoveNextAsync">
|
||||
<summary>Advances the enumerator asynchronously to the next element of the collection.</summary>
|
||||
<returns>
|
||||
A <see cref="T:System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1"/> that will complete with a result of <c>true</c>
|
||||
if the enumerator was successfully advanced to the next element, or <c>false</c> if the enumerator has
|
||||
passed the end of the collection.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.Current">
|
||||
<summary>Gets the element in the collection at the current position of the enumerator.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable`1.Enumerator.DisposeAsync">
|
||||
<summary>
|
||||
Performs application-defined tasks associated with freeing, releasing, or
|
||||
resetting unmanaged resources asynchronously.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.CompilerServices.EnumeratorCancellationAttribute">
|
||||
<summary>Allows users of async-enumerable methods to mark the parameter that should receive the cancellation token value from <see cref="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)" />.</summary>
|
||||
</member>
|
||||
<member name="M:System.Runtime.CompilerServices.EnumeratorCancellationAttribute.#ctor">
|
||||
<summary>Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.EnumeratorCancellationAttribute" /> class.</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.InteropServices.LibraryImportAttribute">
|
||||
<summary>
|
||||
Attribute used to indicate a source generator should create a function for marshalling
|
||||
arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
|
||||
</summary>
|
||||
<remarks>
|
||||
This attribute is meaningless if the source generator associated with it is not enabled.
|
||||
The current built-in source generator only supports C# and only supplies an implementation when
|
||||
applied to static, partial, non-generic methods.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="M:System.Runtime.InteropServices.LibraryImportAttribute.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:System.Runtime.InteropServices.LibraryImportAttribute"/>.
|
||||
</summary>
|
||||
<param name="libraryName">Name of the library containing the import.</param>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.LibraryName">
|
||||
<summary>
|
||||
Gets the name of the library containing the import.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.EntryPoint">
|
||||
<summary>
|
||||
Gets or sets the name of the entry point to be called.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshalling">
|
||||
<summary>
|
||||
Gets or sets how to marshal string arguments to the method.
|
||||
</summary>
|
||||
<remarks>
|
||||
If this field is set to a value other than <see cref="F:System.Runtime.InteropServices.StringMarshalling.Custom" />,
|
||||
<see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType" /> must not be specified.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType">
|
||||
<summary>
|
||||
Gets or sets the <see cref="T:System.Type"/> used to control how string arguments to the method are marshalled.
|
||||
</summary>
|
||||
<remarks>
|
||||
If this field is specified, <see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshalling" /> must not be specified
|
||||
or must be set to <see cref="F:System.Runtime.InteropServices.StringMarshalling.Custom" />.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:System.Runtime.InteropServices.LibraryImportAttribute.SetLastError">
|
||||
<summary>
|
||||
Gets or sets whether the callee sets an error (SetLastError on Windows or errno
|
||||
on other platforms) before returning from the attributed method.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Runtime.InteropServices.StringMarshalling">
|
||||
<summary>
|
||||
Specifies how strings should be marshalled for generated p/invokes
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Custom">
|
||||
<summary>
|
||||
Indicates the user is supplying a specific marshaller in <see cref="P:System.Runtime.InteropServices.LibraryImportAttribute.StringMarshallingCustomType"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Utf8">
|
||||
<summary>
|
||||
Use the platform-provided UTF-8 marshaller.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:System.Runtime.InteropServices.StringMarshalling.Utf16">
|
||||
<summary>
|
||||
Use the platform-provided UTF-16 marshaller.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Collections.Generic.IAsyncEnumerable`1">
|
||||
<summary>Exposes an enumerator that provides asynchronous iteration over values of a specified type.</summary>
|
||||
<typeparam name="T">The type of values to enumerate.</typeparam>
|
||||
</member>
|
||||
<member name="M:System.Collections.Generic.IAsyncEnumerable`1.GetAsyncEnumerator(System.Threading.CancellationToken)">
|
||||
<summary>Returns an enumerator that iterates asynchronously through the collection.</summary>
|
||||
<param name="cancellationToken">A <see cref="T:System.Threading.CancellationToken"/> that may be used to cancel the asynchronous iteration.</param>
|
||||
<returns>An enumerator that can be used to iterate asynchronously through the collection.</returns>
|
||||
</member>
|
||||
<member name="T:System.Collections.Generic.IAsyncEnumerator`1">
|
||||
<summary>Supports a simple asynchronous iteration over a generic collection.</summary>
|
||||
<typeparam name="T">The type of objects to enumerate.</typeparam>
|
||||
</member>
|
||||
<member name="M:System.Collections.Generic.IAsyncEnumerator`1.MoveNextAsync">
|
||||
<summary>Advances the enumerator asynchronously to the next element of the collection.</summary>
|
||||
<returns>
|
||||
A <see cref="T:System.Threading.Tasks.ValueTask`1"/> that will complete with a result of <c>true</c> if the enumerator
|
||||
was successfully advanced to the next element, or <c>false</c> if the enumerator has passed the end
|
||||
of the collection.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="P:System.Collections.Generic.IAsyncEnumerator`1.Current">
|
||||
<summary>Gets the element in the collection at the current position of the enumerator.</summary>
|
||||
</member>
|
||||
<member name="T:System.IAsyncDisposable">
|
||||
<summary>Provides a mechanism for releasing unmanaged resources asynchronously.</summary>
|
||||
</member>
|
||||
<member name="M:System.IAsyncDisposable.DisposeAsync">
|
||||
<summary>
|
||||
Performs application-defined tasks associated with freeing, releasing, or
|
||||
resetting unmanaged resources asynchronously.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute">
|
||||
<summary>Specifies that null is allowed as an input even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
|
||||
<summary>Specifies that null is disallowed as an input even if the corresponding type allows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
|
||||
<summary>Specifies that an output may be null even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
|
||||
<summary>Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
|
||||
<summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>, the parameter may be null even if the corresponding type disallows it.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified return value condition.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated parameter may be null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
|
||||
<summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, the parameter will not be null even if the corresponding type allows it.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified return value condition.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated parameter will not be null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
|
||||
<summary>Specifies that the output will be non-null if the named parameter is non-null.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
|
||||
<summary>Initializes the attribute with the associated parameter name.</summary>
|
||||
<param name="parameterName">
|
||||
The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
|
||||
<summary>Gets the associated parameter name.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
|
||||
<summary>Applied to a method that will never return under any circumstance.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
|
||||
<summary>Specifies that the method will not return if the associated Boolean parameter is passed the specified value.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
|
||||
<summary>Initializes the attribute with the specified parameter value.</summary>
|
||||
<param name="parameterValue">
|
||||
The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
|
||||
the associated parameter matches this value.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
|
||||
<summary>Gets the condition parameter value.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
|
||||
<summary>Specifies that the method or property will ensure that the listed field and property members have not-null values.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
|
||||
<summary>Initializes the attribute with a field or property member.</summary>
|
||||
<param name="member">
|
||||
The field or property member that is promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
|
||||
<summary>Initializes the attribute with the list of field and property members.</summary>
|
||||
<param name="members">
|
||||
The list of field and property members that are promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
|
||||
<summary>Gets field or property member names.</summary>
|
||||
</member>
|
||||
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
|
||||
<summary>Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.</summary>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
|
||||
<summary>Initializes the attribute with the specified return value condition and a field or property member.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated field or property member will not be null.
|
||||
</param>
|
||||
<param name="member">
|
||||
The field or property member that is promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
|
||||
<summary>Initializes the attribute with the specified return value condition and list of field and property members.</summary>
|
||||
<param name="returnValue">
|
||||
The return value condition. If the method returns this value, the associated field and property members will not be null.
|
||||
</param>
|
||||
<param name="members">
|
||||
The list of field and property members that are promised to be not-null.
|
||||
</param>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
|
||||
<summary>Gets the return value condition.</summary>
|
||||
</member>
|
||||
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
|
||||
<summary>Gets field or property member names.</summary>
|
||||
</member>
|
||||
<member name="T:System.ExceptionPolyfills">
|
||||
<summary>Provides downlevel polyfills for static methods on Exception-derived types.</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll
vendored
Normal file
BIN
packages/Microsoft.Bcl.AsyncInterfaces.10.0.1/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll
vendored
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user