예제 #1
0
        public void GetProperties(string resourceType)
        {
            var path = resourceType;

            var param = new SDataParameters {
                Path = resourceType + "/$template"
            };
            var results = _sdata.Execute(param);


            if (!string.IsNullOrEmpty(path))
            {
                path += "/";
            }
            var template = _sdata.Get("", path + "$template");

            var i = 0;
        }
예제 #2
0
    private void HandleFileAttachments()
    {
        if (!Request.Form.AllKeys.Contains("ibgMatchField") || string.IsNullOrEmpty(Request.Form["ibgMatchField"]))
        {
            return;
        }

        var matchValue = Request.Form["ibgMatchField"];

        if (string.IsNullOrEmpty(matchValue))
        {
            return;
        }

        var client = new SDataClient(SDataUrl)
        {
            UserName = SDataUser,
            Password = SDataPassword
        };

        foreach (string fileKey in Request.Files)
        {
            var file = Request.Files[fileKey];
            if (file == null || file.ContentLength == 0)
            {
                continue;
            }

            var attachment = new AttachedFile(null, file.FileName, file.InputStream);
            client.Execute(new SDataParameters
            {
                Method  = HttpMethod.Post,
                Path    = "attachments",
                Content = new CrmAttachment {
                    Description = matchValue
                },
                Files = { attachment }
            });
        }
    }
예제 #3
0
        public void Execute_Test()
        {
            var requestMock = new Mock<SDataRequest>(null, null, null);
            requestMock.Setup(x => x.GetResponse()).Returns(new SDataResponse(HttpStatusCode.OK, null, null, null, null, null, null, null, null));
            SDataUri requestUri = null;
            var requestFactory = new Func<string, SDataRequest>(uri =>
            {
                requestUri = new SDataUri(uri);
                return requestMock.Object;
            });
            var client = new SDataClient("test://dummy", requestFactory);
            var content = new object();
            var file = new AttachedFile(null, null, null);
            var parms = new SDataParameters
                {
                    StartIndex = 1,
                    Count = 2,
                    Where = "where",
                    OrderBy = "order_by",
                    Search = "search",
                    Include = "include",
                    Select = "select",
                    Precedence = 3,
                    IncludeSchema = true,
                    ReturnDelta = true,
                    TrackingId = "tracking_id",
                    Format = MediaType.ImagePng,
                    Language = "language",
                    Version = "version",
                    Path = "path",
                    ExtensionArgs = {{"foo", "bar"}},
                    Method = HttpMethod.Put,
                    Content = content,
                    ContentType = MediaType.ImageTiff,
                    ETag = "etag",
                    Form = {{"hello", "world"}},
                    Files = {file},
                    Accept = new[] {MediaType.ImageJpeg}
                };
            client.Execute(parms);

            Assert.That(requestUri, Is.Not.Null);
            Assert.That(requestUri.StartIndex, Is.EqualTo(1));
            Assert.That(requestUri.Count, Is.EqualTo(2));
            Assert.That(requestUri.Where, Is.EqualTo("where"));
            Assert.That(requestUri.OrderBy, Is.EqualTo("order_by"));
            Assert.That(requestUri.Search, Is.EqualTo("search"));
            Assert.That(requestUri.Include, Is.EqualTo("include"));
            Assert.That(requestUri.Select, Is.EqualTo("select"));
            Assert.That(requestUri.Precedence, Is.EqualTo(3));
            Assert.That(requestUri.IncludeSchema, Is.EqualTo(true));
            Assert.That(requestUri.ReturnDelta, Is.EqualTo(true));
            Assert.That(requestUri.TrackingId, Is.EqualTo("tracking_id"));
            Assert.That(requestUri.Format, Is.EqualTo(MediaType.ImagePng));
            Assert.That(requestUri.Language, Is.EqualTo("language"));
            Assert.That(requestUri.Version, Is.EqualTo("version"));
            Assert.That(requestUri.Path, Is.EqualTo("path"));
            Assert.That(requestUri["_foo"], Is.EqualTo("bar"));
            Assert.That(requestMock.Object.Method, Is.EqualTo(HttpMethod.Put));
            Assert.That(requestMock.Object.Content, Is.EqualTo(content));
            Assert.That(requestMock.Object.ContentType, Is.EqualTo(MediaType.ImageTiff));
            Assert.That(requestMock.Object.ETag, Is.EqualTo("etag"));
            Assert.That(requestMock.Object.Form["hello"], Is.EqualTo("world"));
            Assert.That(requestMock.Object.Files[0], Is.EqualTo(file));
            Assert.That(requestMock.Object.Accept, Is.EqualTo(new[] {MediaType.ImageJpeg}));
            Assert.That(requestMock.Object.AcceptLanguage, Is.EqualTo("language"));
        }
예제 #4
0
        public void Execute_Test()
        {
            var requestMock = new Mock <SDataRequest>(null, null, null);

            requestMock.Setup(x => x.GetResponse()).Returns(new SDataResponse(HttpStatusCode.OK, null, null, null, null, null, null, null, null));
            SDataUri requestUri     = null;
            var      requestFactory = new Func <string, SDataRequest>(uri =>
            {
                requestUri = new SDataUri(uri);
                return(requestMock.Object);
            });
            var client  = new SDataClient("test://dummy", requestFactory);
            var content = new object();
            var file    = new AttachedFile(null, null, null);
            var parms   = new SDataParameters
            {
                StartIndex    = 1,
                Count         = 2,
                Where         = "where",
                OrderBy       = "order_by",
                Search        = "search",
                Include       = "include",
                Select        = "select",
                Precedence    = 3,
                IncludeSchema = true,
                ReturnDelta   = true,
                TrackingId    = "tracking_id",
                Format        = MediaType.ImagePng,
                Language      = "language",
                Version       = "version",
                Path          = "path",
                ExtensionArgs = { { "foo", "bar" } },
                Method        = HttpMethod.Put,
                Content       = content,
                ContentType   = MediaType.ImageTiff,
                ETag          = "etag",
                Form          = { { "hello", "world" } },
                Files         = { file },
                Accept        = new[] { MediaType.ImageJpeg }
            };

            client.Execute(parms);

            Assert.That(requestUri, Is.Not.Null);
            Assert.That(requestUri.StartIndex, Is.EqualTo(1));
            Assert.That(requestUri.Count, Is.EqualTo(2));
            Assert.That(requestUri.Where, Is.EqualTo("where"));
            Assert.That(requestUri.OrderBy, Is.EqualTo("order_by"));
            Assert.That(requestUri.Search, Is.EqualTo("search"));
            Assert.That(requestUri.Include, Is.EqualTo("include"));
            Assert.That(requestUri.Select, Is.EqualTo("select"));
            Assert.That(requestUri.Precedence, Is.EqualTo(3));
            Assert.That(requestUri.IncludeSchema, Is.EqualTo(true));
            Assert.That(requestUri.ReturnDelta, Is.EqualTo(true));
            Assert.That(requestUri.TrackingId, Is.EqualTo("tracking_id"));
            Assert.That(requestUri.Format, Is.EqualTo(MediaType.ImagePng));
            Assert.That(requestUri.Language, Is.EqualTo("language"));
            Assert.That(requestUri.Version, Is.EqualTo("version"));
            Assert.That(requestUri.Path, Is.EqualTo("path"));
            Assert.That(requestUri["_foo"], Is.EqualTo("bar"));
            Assert.That(requestMock.Object.Method, Is.EqualTo(HttpMethod.Put));
            Assert.That(requestMock.Object.Content, Is.EqualTo(content));
            Assert.That(requestMock.Object.ContentType, Is.EqualTo(MediaType.ImageTiff));
            Assert.That(requestMock.Object.ETag, Is.EqualTo("etag"));
            Assert.That(requestMock.Object.Form["hello"], Is.EqualTo("world"));
            Assert.That(requestMock.Object.Files[0], Is.EqualTo(file));
            Assert.That(requestMock.Object.Accept, Is.EqualTo(new[] { MediaType.ImageJpeg }));
            Assert.That(requestMock.Object.AcceptLanguage, Is.EqualTo("language"));
        }