我需要让我的应用程序的用户使用他们的个人USB安全令牌签署他们的批准.
我已设法签署数据,但我无法获得有关谁使用了令牌的信息.
这是我到目前为止的代码:
CspParameters csp = new CspParameters(1, "SafeNet RSA CSP");
csp.Flags = CspProviderFlags.UseDefaultKeyContainer;
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(csp);
// Create some data to sign.
byte[] data = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7 };
Console.WriteLine("Data : " + BitConverter.ToString(data));
// Sign the data using the Smart Card CryptoGraphic Provider.
byte[] sig = rsa.SignData(data, "SHA1");
Console.WriteLine("Signature : " + BitConverter.ToString(sig));
Run Code Online (Sandbox Code Playgroud)
令牌信息中有一个名为"令牌名称"的字段.我如何访问该字段以验证是否已使用令牌签署批准?

有条件的信息和更新:
看看这篇文章:Excel"外部表不是预期的格式."
我在该帖子中描述了同样的问题,但我使用LinqtoExcel来读取文件而不是普通查询.
LinqToExcel等效设置连接字符串作为该帖子的答案表明了什么?
这是我正在使用的代码:
var excelOM = new ExcelQueryFactory(pPathArchivoOM);
var despachosClient = from c in excelOM.Worksheet<RegistroDespachoOM>("Tabla_1")
where c.DESTINAT.Contains("SOMETEXT")
select c;
//Identificar los despachos asociados a números de documento sin datos aún.
foreach (RegistroDespachoOM despacho in despachosClient)
{ ...
Run Code Online (Sandbox Code Playgroud)
我的问题是:在foreach开始时"外部表格不是预期的格式".
编辑(我的问题已经解决,但问题仍然没有答案):我正在使用EPPlus代替LinqToExcel执行此任务,现在一切正常.
我正在使用MailMessage和SmtpClient从ASP.NET发送电子邮件.我想介绍一些换行符,但没有以下工作:
sbBody.Append("<table width='100%'><tr><td></br></br>");sbBody.Append("<table width='100%'><tr><td>\r\n\r\n");sbBody是一个StringBuilder,我最后用它来设置MailMessage的主体: mailMessage.Body = sbBody.ToString()
我在这里失踪了什么?我在Outlook中查看电子邮件,当然我将IsBodyHtml设置为true.
谢谢你的时间.
编辑:解决了,这是一个语法错误,</br>而不是<br/>
在我的解决方案中,我有一个业务层项目和另一个处理集成的项目; 在最后一个我有一个类来进行一些服务方法调用.
业务层引用集成项目.在那里,在业务层,我有followig方法,当我尝试创建Proxy类的实例时,intellisense向我展示了很多"global ::".我认为这个全局::没有区别,但我想知道为什么intellisense会告诉我这一点.
public void ActualizarOrdenesDeCompraDesdeElWS()
{
Integracion.ProxyAudifarma proxy = new global::GOA.Integracion.ProxyAudifarma();
}
Run Code Online (Sandbox Code Playgroud)
我想这是一个微不足道的C#基础,我很想念,谢谢你的回答.
- 邮政编辑解决方案:
电话是:
namespace GOA.Negocio
{
public class GOA
{
public int ActualizarOrdenesDeCompraDesdeElWS()
{
Integracion.ProxyAudifarma proxy = new global::GOA.Integracion.ProxyAudifarma();
Run Code Online (Sandbox Code Playgroud)
GOA类被命名为根命名空间引入了歧义风险.将类名更改为AplicacionGOA解决了我的问题,现在intellisense不设置"global ::"空名称空间前缀.
[使用:C#3.5 + SQL Server 2005]
我在Business Layer中有一些代码,它们在TransactionScope中包含订单的创建及其详细信息:
DAL.DAL_OrdenDeCompra dalOrdenDeCompra = new GOA.DAL.DAL_OrdenDeCompra();
DAL.DAL_ItemDeUnaOrden dalItemDeUnaOrden = new GOA.DAL.DAL_ItemDeUnaOrden();
using (TransactionScope transaccion = new TransactionScope())
{
//Insertion of the order
orden.Id = dalOrdenDeCompra.InsertarOrdenDeCompra(orden.NumeroOrden, orden.PuntoDeEntregaParaLaOrden.Id, (int)orden.TipoDeCompra, orden.FechaOrden, orden.Observaciones);
foreach (ItemDeUnaOrden item in orden.Items)
{
//Insertion of each one of its items.
dalItemDeUnaOrden.InsertarItemDeUnaOrden(orden.Id, item.CodigoProductoAudifarma, item.CodigoProductoJanssen, item.CodigoEAN13, item.Descripcion, item.CantidadOriginal, item.ValorUnitario);
}
transaccion.Complete();
}
return true;
Run Code Online (Sandbox Code Playgroud)
以下是执行插入的DAL代码:
public int InsertarOrdenDeCompra(string pNumeroOrden, int pPuntoEntregaId, int pTipoDeCompra, DateTime pFechaOrden, string pObservaciones)
{
try
{
DataTable dataTable = new …Run Code Online (Sandbox Code Playgroud)