公开 Web 服务以将批记录插入 NAV

Exposing a Web service to insert batch records to NAV

嘿伙计们,我在尝试向 NAV id 中的客户插入 table 时遇到了代码中这一行的问题,非常感谢任何反馈和可能的解决方案。 service.Create(ref custArray); 我正在实施的完整代码如下; **kenedy 是我的网络服务。

 namespace PrintCustomerList
    {
    // Import newly generated Web service proxy.
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Net;
    using kenedy;
    using System.Diagnostics;
    using System.Xml;

     class Program
     {


     static void Main(string[] args)
     {
        var service = new Customer_Service();
        service.UseDefaultCredentials = true;
        service.Credentials = System.Net.CredentialCache.DefaultCredentials;
        service.Url = "http://..:7047/DynamicsNAV90/WS/..%20LIMITED/Page/Customer";
        // Create instance of customer.

        Customer custArray = new Customer();
        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load("C:\Users\..\Desktop\Product.xml");
        var nodeList = xmlDoc.DocumentElement.SelectNodes("/Table/Product");

        for(var i = 0; i < nodeList.Count; i++)
        {
            foreach (XmlNode node in nodeList)
            {
            custArray.Address = node.SelectSingleNode("Product_id").InnerText;
            custArray.Name = node.SelectSingleNode("Product_name").InnerText;
            custArray.Address_2 = node.SelectSingleNode("Product_price").InnerText;
                Console.WriteLine(custArray.Name);

            }

        }
        Console.WriteLine("Records Inserted");
        Console.WriteLine("End of Customers");
        Console.WriteLine("Press [ENTER] to exit program!");
        Console.ReadLine();
       service.Create(ref custArray);


        // service.Update(ref custArray);
        //service.CreateMultiple(ref custArray);
        // Create instance of service and set credentials.



    }

}

}}

您需要声明有权访问 post 数据的用户。将您的凭据更改为:

NetworkCredential cred = new NetworkCredential("user", "password", "domain");

service.Credentials = cred;

如果它抛出一个错误,请告诉我!