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; } } } }
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); }