.NET SDK (Zatca einvoice), показывающая ошибку на сервере API, но работает нормально с ASP.NETC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 .NET SDK (Zatca einvoice), показывающая ошибку на сервере API, но работает нормально с ASP.NET

Сообщение Anonymous »

Я успешно создал приложение ASP.NET, которое использует zatca .net SDK (Saudi Arabia E-Invoicing) для создания и подписи XML-файлов. Все работает нормально в ASP.NET с SDK. < /P>
Теперь я пытаюсь сделать API .net для выполнения тех же функций. Но при выполнении API он застрял в функции. Где функция использует zatca .net sdk для выполнения. < /P>
Код функции: < /p>
public static string[] SignDocument(XmlDocument doc, string signedPath, string certificate, string privateKey)
{
string[] retresult = new string[3];

try
{
SignResult result = new EInvoiceSigner().SignDocument(doc, certificate, privateKey);

if (result != null && result.IsValid)
{
result.SaveSignedEInvoice(signedPath);
string hash = (from s in result.Steps
where s.StepName.Contains("Generate EInvoice Hash")
select s).First().ResultedValue;

string[] RequestResult = new string[2];
RequestResult = GenerateRequest(signedPath);

if (RequestResult[0] == "success")
{
retresult[0] = "success";
retresult[1] = hash;
retresult[2] = RequestResult[1];
return retresult;
}
else
{
retresult[0] = "invreq";
retresult[1] = "";
retresult[2] = "";
return retresult;
}
}
else
{
retresult[0] = "sign";
return retresult;
}
}
catch (Exception ex)
{
retresult[0] = "failed";
return retresult;
}
}
< /code>
Здесь, при выполнении нижеизложенной строки, она показывает ошибку QR -кода. < /p>
SignResult result = new EInvoiceSigner().SignDocument(doc, certificate, privateKey);
< /code>
Ошибка передается из SDK. Проблема заключается в том, что та же функция работает нормально в приложении ASP.NET. Все то же самое. Используя одинаковые SDK DLL, те же значения передаются в функцию. Я также пытался извлечь код из DLL SDK, и это так, как ниже: < /p>
namespace Zatca.EInvoice.SDK
{
public class EInvoiceSigner : IEInvoiceSigner
{
private readonly CoRExecutor signDocumentExecutor;

public EInvoiceSigner()
{
this.signDocumentExecutor = new CoRExecutor().AddMiddleware().AddMiddleware().AddMiddleware().AddMiddleware
().AddMiddleware().AddMiddleware().AddMiddleware().AddMiddleware().AddMiddleware().AddMiddleware();
}

public SignResult SignDocument(
XmlDocument eInvoice,
string certificateContent,
string privateKeyContent)
{
EInvoiceData invoice = new EInvoiceData(eInvoice)
{
CertificateContent = certificateContent,
PrivateKeyContent = privateKeyContent
};
this.signDocumentExecutor.Execute(invoice);
return new SignResult()
{
SignedEInvoice = invoice.EInvoice,
IsValid = invoice.IsValid,
ErrorMessage = invoice.Errors,
Steps = invoice.Steps
};
}
}
}
< /code>
Я не могу внести никаких изменений в SDK. Я не могу понять проблему. Пожалуйста, помогите


Подробнее здесь: https://stackoverflow.com/questions/794 ... e-with-asp
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»