コード例 #1
0
        private void DeleteButton_Click(object sender, RoutedEventArgs e)
        {
            FrameworkElement elem = sender as FrameworkElement;

            if (elem == null)
            {
                return;
            }

            Extension extension = elem.DataContext as Extension;

            if (extension == null || string.IsNullOrWhiteSpace(extension.Name))
            {
                return;
            }

            MessageBoxDialog.Show(string.Format(ESRI.ArcGIS.Mapping.Builder.Resources.Strings.DeletingExtensionWillMakeItUnavailableForFurtherUse, System.Environment.NewLine), ESRI.ArcGIS.Mapping.Builder.Resources.Strings.ConfirmDelete, MessageBoxButton.OKCancel, (s, args) =>
            {
                if (args.Result == MessageBoxResult.OK)
                {
                    ApplicationBuilder.ApplicationBuilderClient client = WCFProxyFactory.CreateApplicationBuilderProxy();
                    client.DeleteExtensionLibraryCompleted            += new EventHandler <ApplicationBuilder.DeleteExtensionLibraryCompletedEventArgs>(client_DeleteExtensionLibraryCompleted);
                    client.DeleteExtensionLibraryAsync(extension.Name, extension);
                }
            });
        }
コード例 #2
0
        private void uploadFile(OpenFileDialog dialog, IEnumerable <string> assemblyNames)
        {
            string selectedFileName;

            byte[] fileBuffer = null;
            try
            {
                using (FileStream strm = dialog.File.OpenRead())
                {
                    selectedFileName = dialog.File.Name;
                    // remove the .xap extension
                    if (selectedFileName.EndsWith(".xap", StringComparison.OrdinalIgnoreCase))
                    {
                        selectedFileName = selectedFileName.Substring(0, selectedFileName.Length - 4);
                    }
                    using (BinaryReader rdr = new BinaryReader(strm))
                    {
                        fileBuffer = rdr.ReadBytes((int)strm.Length);
                    }
                }

                if (fileBuffer != null)
                {
                    Extension extension = new Extension()
                    {
                        Name       = selectedFileName,
                        Url        = string.Format("{0}/{1}.xap", BuilderApplication.Instance.ExtensionsRepositoryBaseUrl, selectedFileName),
                        Assemblies = new List <ESRI.ArcGIS.Mapping.Builder.Common.Assembly>(),
                    };
                    ObservableCollection <string> assemblies = new ObservableCollection <string>();
                    if (assemblyNames != null)
                    {
                        foreach (string assemblyInExtension in assemblyNames)
                        {
                            if (!AssemblyManager.IsBuiltInAssembly(assemblyInExtension))
                            {
                                assemblies.Add(assemblyInExtension);
                                extension.Assemblies.Add(new ESRI.ArcGIS.Mapping.Builder.Common.Assembly()
                                {
                                    Name = assemblyInExtension
                                });
                            }
                        }
                    }
                    showHideProgressIndicator(false);
                    byte[] msgBody = fileBuffer.ToArray();
                    ApplicationBuilder.ApplicationBuilderClient client = WCFProxyFactory.CreateApplicationBuilderProxy();
                    client.UploadExtensionLibraryCompleted += client_UploadExtensionLibraryCompleted;
                    client.UploadExtensionLibraryAsync(selectedFileName, msgBody, assemblies, extension);
                }
            }
            catch (Exception ex)
            {
                Logger.Instance.LogError(ex);
            }
        }
コード例 #3
0
 public static ApplicationBuilderClient CreateApplicationBuilderProxy()
 {
     TimeSpan timeout = TimeSpan.FromMinutes(3);
     ApplicationBuilderClient client = new ApplicationBuilderClient(UserId);
     return client;
 }
 public override void Execute(object parameter)
 {
     ApplicationBuilder.ApplicationBuilderClient client = WCFProxyFactory.CreateApplicationBuilderProxy();
     client.SaveConfigurationStoreXmlCompleted += new EventHandler <ApplicationBuilder.SaveConfigurationStoreXmlCompletedEventArgs>(client_SaveConfigurationStoreXmlCompleted);
     client.SaveConfigurationStoreXmlAsync(XmlSerializer.Serialize <ConfigurationStore>(BuilderApplication.Instance.ConfigurationStore));
 }