Пример #1
0
 internal void InitFromCreationInformation(FileCreationInformation creation)
 {
     if (creation != null)
     {
         base.ObjectData.Properties["Name"] = creation.Url;
         if (!string.IsNullOrEmpty(creation.Url))
         {
             if (creation.Url.EndsWith("/", StringComparison.Ordinal))
             {
                 throw new ArgumentException();
             }
             int num = creation.Url.LastIndexOf('/');
             if (num >= 0 && num < creation.Url.Length)
             {
                 string value = creation.Url.Substring(num + 1);
                 base.ObjectData.Properties["Name"] = value;
             }
         }
     }
 }
Пример #2
0
        public File Add(FileCreationInformation parameters)
        {
            ClientRuntimeContext context = base.Context;

            if (base.Context.ValidateOnClient)
            {
                if (parameters == null)
                {
                    throw ClientUtility.CreateArgumentNullException("parameters");
                }
                if (parameters != null)
                {
                    if (parameters.Url == null)
                    {
                        throw ClientUtility.CreateArgumentNullException("parameters.Url");
                    }
                    Uri uri;
                    if (parameters.Url != null && !Uri.TryCreate(parameters.Url, UriKind.RelativeOrAbsolute, out uri))
                    {
                        throw ClientUtility.CreateArgumentException("parameters.Url");
                    }
                    if (parameters.Url != null && parameters.Url.Length < 1)
                    {
                        throw ClientUtility.CreateArgumentException("parameters.Url");
                    }
                }
            }
            File file = new File(context, new ObjectPathMethod(context, base.Path, "Add", new object[]
            {
                parameters
            }));

            file.Path.SetPendingReplace();
            ObjectIdentityQuery objectIdentityQuery = new ObjectIdentityQuery(file.Path);

            context.AddQueryIdAndResultObject(objectIdentityQuery.Id, file);
            context.AddQuery(objectIdentityQuery);
            base.AddChild(file);
            file.InitFromCreationInformation(parameters);
            return(file);
        }