Example #1
0
        protected void CreateSite_Click(object sender, EventArgs e)
        {
            string   id = incidentsDropDownList.SelectedItem.Value;
            Incident incident;

            using (IncidentManagementClient incidentManagement = new IncidentManagementClient())
            {
                incidentManagement.ClientCredentials.UserName.UserName        = "******";
                incidentManagement.ClientCredentials.Windows.ClientCredential = CredentialCache.DefaultNetworkCredentials;
                incident = incidentManagement.GetIncident(id);
            }

            SubSiteCreationClient client = new SubSiteCreationClient();

            client.CreateSubSite("Incident", id, incident.Partner);
        }
Example #2
0
        protected void CloseIncident_Click(object sender, EventArgs e)
        {
            string   id = incidentsDropDownList.SelectedItem.Value;
            Incident incident;

            using (IncidentManagementClient incidentManagement = new IncidentManagementClient())
            {
                incidentManagement.ClientCredentials.UserName.UserName        = "******";
                incidentManagement.ClientCredentials.Windows.ClientCredential = CredentialCache.DefaultNetworkCredentials;
                incident = incidentManagement.GetIncident(id);
            }

            IncidentSiteClient client = new IncidentSiteClient();

            client.UpdateIncidentStatus(id, incident.Partner, "closed");
        }
Example #3
0
        private DisposableProxy <IIncidentManagement> GetClient()
        {
            // Create a proxy that's easy to dispose. The problem with the IPricing interface is, that it doesn't implement
            // IDisposable. This DisposableProxy helps with that.
            IncidentManagementClient client = new IncidentManagementClient();

            // Use the PartnerID as the username. We're using the trusted facade pattern. The service trusts this SharePoint app, so
            // it trusts us to pass in the correct partner information.
            client.ClientCredentials.UserName.UserName = partnerId;

            // The methods calling GetClient() should have wrapped the call into a HostingEnvironment.Impersonate(). That causes the
            // DefaultNetworkCredentials to contain the App Pool Account. Note, if you look at the DefaultNetworkCredentials in the debugger
            // the properties will be empty. However, the credentials will still get set.
            client.ClientCredentials.Windows.ClientCredential = CredentialCache.DefaultNetworkCredentials;

            return(new DisposableProxy <IIncidentManagement>(client));
        }
Example #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                Incident[] incidents;
                using (IncidentManagementClient incidentManagement = new IncidentManagementClient())
                {
                    incidentManagement.ClientCredentials.UserName.UserName        = "******";
                    incidentManagement.ClientCredentials.Windows.ClientCredential = CredentialCache.DefaultNetworkCredentials;
                    incidents = incidentManagement.GetAllIncidents();
                }

                foreach (Incident incident in incidents)
                {
                    ListItem item = new ListItem();
                    item.Value = incident.Id.ToString(CultureInfo.CurrentCulture);
                    item.Text  = string.Format(CultureInfo.CurrentCulture, "[Partner:{0}] [IncidentId:{1}] - {2}: {3}", incident.Partner, incident.Id, incident.Product, incident.Description);
                    this.incidentsDropDownList.Items.Add(item);
                }
            }
        }