<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2425335818368184627</id><updated>2026-09-20T13:41:09.742+02:00</updated><category term="Sharepoint Custom Development"/><category term="SharePoint Administration"/><category term="Custom Development"/><category term="SharePoint 2010"/><category term="Powershell"/><category term="Scripting"/><category term="SharePoint Silverlight Development"/><category term="SharePoint 2010 Configuration"/><category term="SharePoint 2010 Silverlight Object Model"/><category term="#agile #architecture #agilearchitecture #agileinarchitecture #safeagile #enterprisearchitecture"/><category term="Custom Web Part"/><category term="Javascript"/><category term="SharePoint Designer"/><category term="SharePoint Search"/><category term="SharePoint Test Case"/><category term="SharePoint and WebServices"/><category term="Silverlight Deployment"/><category term="WCF Service"/><category term="#agile #architecture #agilearchitecture #agileinarchitecture #safeagile #enterprisearchitecture #vibecoding #aiprompt #development #boiletplate"/><category term="#algotrading #free"/><category term="#crash500"/><category term="#deriv"/><category term="#forex"/><category term="#indice"/><category term="#mql5"/><category term="#mt5"/><category term="#simplersi"/><category term="#synthetic"/><category term="#trading"/><category term="C#"/><category term="Code Analysis"/><category term="Feature Activation"/><category term="FxCop"/><category term="MasterPage"/><category term="Office Web Apps"/><category term="Publishing Pages"/><category term="Serialization"/><category term="Server Management"/><category term="SharePoint Test Matrix"/><category term="SharePoint Testing"/><category term="SharePoint Version"/><category term="SharePoint Workflow"/><category term="Silverlight"/><category term="Term Store Management"/><category term="Testing"/><category term="UAC Access Denied"/><category term="User Profile Manager"/><category term="User Profile Service"/><category term="WSS Version"/><category term="WorkFlow Associations"/><category term="appsettings.json"/><category term="crash500"/><category term="deriv"/><category term="dotnet core"/><category term="forex"/><category term="indice"/><category term="mt5"/><category term="nunit testing"/><category term="rsiindicator"/><category term="synthetic"/><category term="trading"/><category term="tradinglevels"/><title type='text'>Tech, Forex, Automation</title><subtitle type='html'>Over the years, I’ve performed many technical roles — from hands-on engineering to enterprise architecture — and always found joy in sharing ideas through blogging. After a bit of a hiatus from blogging, I thought I’d start again and try my luck at putting thoughts out there. My hope is to spark collaboration, challenge assumptions, and maybe even help us do things a little better. So here are my ramblings for now…</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://markanthonyparker.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-307592708459499067</id><published>2025-09-26T15:52:00.002+02:00</published><updated>2025-09-26T16:00:34.490+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="#agile #architecture #agilearchitecture #agileinarchitecture #safeagile #enterprisearchitecture #vibecoding #aiprompt #development #boiletplate"/><title type='text'>Vibe Coding for Architects: From Idea to Impact</title><content type='html'>
&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en&quot;&gt;
&lt;head&gt;
    &lt;meta charset=&quot;UTF-8&quot;&gt;
    &lt;title&gt;Vibe Coding for Architects: From Idea to Impact&lt;/title&gt;
    &lt;style&gt;
        body { font-family: Arial, sans-serif; line-height: 1.6; margin: 40px; background-color: #f9f9f9; color: #333; }
        h1, h3, h3 { color: #2c3e50; }
        blockquote { background-color: #eef; padding: 20px; border-left: 5px solid #88c; }
        ul { margin-left: 20px; }
        code { background-color: #eee; padding: 2px 4px; font-family: monospace; }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;h3&gt;🚨 The Problem: How Do Architects Enable Speed Without Sacrificing Safety?&lt;/h3&gt;
    &lt;p&gt;In today’s enterprise environments, architecture teams are under pressure to deliver faster — but without compromising on security, scalability, or operational resilience. The tension is real:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;&lt;strong&gt;Delivery velocity&lt;/strong&gt; demands rapid experimentation, short feedback loops, and lean processes.&lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Governance&lt;/strong&gt; demands compliance, traceability, and architectural integrity.&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Traditional architecture practices — heavy modeling, gated reviews, and rigid documentation — often slow down innovation. Meanwhile, agile teams want autonomy and speed. The result? Either governance is bypassed, or delivery is delayed.&lt;/p&gt;
    &lt;p&gt;&lt;strong&gt;Enter vibe coding&lt;/strong&gt; — a generative AI-powered approach that lets architects and developers co-create solutions rapidly, while still embedding guardrails and governance into the software development lifecycle (SDLC).&lt;/p&gt;

    &lt;h3&gt;🎯 What Is Vibe Coding?&lt;/h3&gt;
    &lt;p&gt;Vibe coding is a lightweight, AI-assisted approach to software ideation and prototyping. You chat with an AI assistant, sketch code, explore infrastructure options, and validate ideas — all in minutes.&lt;/p&gt;
    &lt;p&gt;For developers, it’s liberating. For architects, it’s a &lt;strong&gt;superpower&lt;/strong&gt; — if used wisely.&lt;/p&gt;
    &lt;p&gt;This post shows how architects can use vibe coding to:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Frame problems clearly.&lt;/li&gt;
        &lt;li&gt;Prototype fast.&lt;/li&gt;
        &lt;li&gt;Codify guardrails.&lt;/li&gt;
        &lt;li&gt;Empower teams.&lt;/li&gt;
        &lt;li&gt;Maintain governance across the SDLC.&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🧩 Step 1: Inception — Frame the Problem, Lightly&lt;/h3&gt;
    &lt;p&gt;Start with clarity, but keep it lean.&lt;/p&gt;
    &lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;: “We need a Notification Orchestration Service that sends alerts to customers across email, SMS, and push channels — triggered by business events like payment failures or fraud detection.”&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;&lt;strong&gt;Business Capability&lt;/strong&gt;: Multi-channel notification orchestration.&lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Value Stream&lt;/strong&gt;: Event-driven customer communication.&lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Non-Negotiables&lt;/strong&gt;:
            &lt;ul&gt;
                &lt;li&gt;Security: Microsoft Authentication Library (MSAL) integration.&lt;/li&gt;
                &lt;li&gt;Latency: Less than 200 milliseconds for push notifications.&lt;/li&gt;
                &lt;li&gt;Observability: Azure Application Insights with correlation IDs.&lt;/li&gt;
                &lt;li&gt;Cost: Less than $0.01 per notification.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🧱 What Is an Architecture Decision Record (ADR)?&lt;/h3&gt;
    &lt;p&gt;An &lt;strong&gt;Architecture Decision Record (ADR)&lt;/strong&gt; is a lightweight document that captures a key technical decision made during the design of a system. It helps teams understand the rationale behind choices — especially when revisiting them months or years later.&lt;/p&gt;
    &lt;p&gt;A &lt;strong&gt;skeleton ADR&lt;/strong&gt; is a simple, early-stage version of this document. It’s not meant to be exhaustive — just enough to set direction and spark alignment.&lt;/p&gt;
    &lt;p&gt;&lt;strong&gt;Basic structure:&lt;/strong&gt;&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;&lt;strong&gt;Problem Statement&lt;/strong&gt;: What are we solving?&lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Constraints&lt;/strong&gt;: What must be respected?&lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Success Criteria&lt;/strong&gt;: What does “done” look like?&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🤖 Step 2: Vibe Ideation — Explore With AI&lt;/h3&gt;
    &lt;p&gt;Treat your AI assistant like a pair-programming partner. Ask it to generate scaffolding:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;“Create a .NET 8 Durable Function orchestrator with retry and App Insights logging.”&lt;/li&gt;
        &lt;li&gt;“Generate a Helm chart &amp; Azure DevOps pipeline for Elastic Kubernetes Service (EKS).”&lt;/li&gt;
        &lt;li&gt;“Compare Azure App Service vs Azure Functions vs Azure Kubernetes Service (AKS) for cost and reliability.”&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Explore what-ifs:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;“What’s the latency difference between Azure Notification Hubs and Twilio?”&lt;/li&gt;
        &lt;li&gt;“How would retries work with exponential backoff?”&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;⚡ Step 3: Spike &amp; Proof of Concept — Fast Reality Check&lt;/h3&gt;
    &lt;p&gt;Take the AI-generated output and spin up a thin spike — a minimal implementation that tests feasibility.&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Minimal domain entities (e.g., NotificationEvent, ChannelConfig).&lt;/li&gt;
        &lt;li&gt;Logging and telemetry baked in.&lt;/li&gt;
        &lt;li&gt;Quick CI/CD to a sandbox.&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Run checks:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Latency under load.&lt;/li&gt;
        &lt;li&gt;Cost per notification.&lt;/li&gt;
        &lt;li&gt;Deployment friction.&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🛠️ Step 4: Architect Review &amp; Hardening&lt;/h3&gt;
    &lt;p&gt;Convert proof-of-concept learnings into hardened reference implementations:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Clean repository structure (e.g., domain-driven design, queue-triggered durable functions).&lt;/li&gt;
        &lt;li&gt;Updated Architecture Decision Records (ADRs) with rationale.&lt;/li&gt;
        &lt;li&gt;Architecture diagrams: context, deployment, flow.&lt;/li&gt;
        &lt;li&gt;Security and operations reviews.&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🧱 Step 5: Codify Guardrails&lt;/h3&gt;
    &lt;h3&gt;🧠 Gold-Standard Prompt for Generative AI&lt;/h3&gt;
    &lt;blockquote&gt;
    &lt;p&gt;&lt;strong&gt;You are a Principal Enterprise Architect&lt;/strong&gt; leading the digital transformation for a Fortune 500 company. Your task is to generate the gold-standard boilerplate for a secure, highly resilient, event-driven &lt;strong&gt;.NET 8 Minimal API&lt;/strong&gt; that will serve as the foundation for a global-scale Notification Orchestration Service.&lt;/p&gt;
    &lt;p&gt;The response must not just list components, but provide demonstrable, production-ready code snippets and justifications for the architectural decisions.&lt;/p&gt;
    &lt;p&gt;&lt;strong&gt;Core Requirements (Elevated)&lt;/strong&gt;&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;&lt;strong&gt;Authentication &amp; Authorization (Zero Trust):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Microsoft Identity Platform (Azure Active Directory): Secure the API using Microsoft Identity Web for robust token validation (JSON Web Token Bearer).&lt;/li&gt;
                &lt;li&gt;Role-Based Access Control (RBAC): Implement a sample policy for authorization that checks for a specific application role (e.g., Notification.Admin).&lt;/li&gt;
                &lt;li&gt;Managed Identities: Define how the API will use Azure Managed Identity for secure, password-less access to Azure Key Vault and other Azure resources.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Data Access (Modern &amp; Performant):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Entity Framework Core (EF Core) 8: Use modern EF Core features like compiled queries and raw SQL execution for critical paths.&lt;/li&gt;
                &lt;li&gt;Sample Model: Include NotificationEvent entity with an Optimistic Concurrency token (e.g., a RowVersion or timestamp).&lt;/li&gt;
                &lt;li&gt;Transactional Outbox Pattern: Integrate a basic mechanism (e.g., a dedicated table/repository) for supporting the transactional outbox pattern to ensure atomicity between database writes and event publishing.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Protocol &amp; Querying:&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Open Data Protocol (OData) v4: Integrate OData for resource querying.&lt;/li&gt;
                &lt;li&gt;API Design: Utilize Minimal APIs for routing and handling, but encapsulate logic within Endpoint Handlers (Mediator pattern via MediatR or Carter).&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Resilience &amp; Observability (Site Reliability Engineering Focus):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;OpenTelemetry: Use OpenTelemetry for logging, metrics, and tracing, integrating with Azure Application Insights.&lt;/li&gt;
                &lt;li&gt;Correlation &amp; Structured Logging: Implement middleware to ensure a consistent correlation ID across all logs and traces. Use Serilog for structured logging.&lt;/li&gt;
                &lt;li&gt;Health Checks: Include Liveness and Readiness endpoints using Microsoft.Extensions.Diagnostics.HealthChecks.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Dependency Injection (DI):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Utilize the built-in .NET DI container.&lt;/li&gt;
                &lt;li&gt;Demonstrate Scrutor usage for automatic service registration of interfaces and implementations within the Clean Architecture layers.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Performance &amp; Asynchrony:&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Asynchronous Patterns: Ensure all I/O bound operations use async/await correctly, including IAsyncEnumerable for streaming results.&lt;/li&gt;
                &lt;li&gt;Performance Constraints: All service logic must be cancellation-token aware.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Project Structure (Enterprise Clean Architecture):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Strict adherence to Clean Architecture: Domain, Application (Commands/Queries and Handlers), Infrastructure (Persistence, External Services), and API (Presentation/Endpoints).&lt;/li&gt;
                &lt;li&gt;Use Project References to enforce dependency rules (e.g., Domain cannot reference Infrastructure).&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;DevOps &amp; Infrastructure-as-Code (IaC):&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;GitHub Actions CI/CD: Provide a multi-stage sample workflow (Build, Test, Publish, Deploy).&lt;/li&gt;
                &lt;li&gt;IaC (Bicep or Terraform): Provide a snippet for deploying the API to Azure Container Apps or Azure App Service, configuring a Virtual Network and Azure SQL Database.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Documentation &amp; Governance:&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;README.md: Detailed setup guide, explaining the use of Managed Identity and Key Vault for configuration.&lt;/li&gt;
                &lt;li&gt;Architecture Decision Record (ADR): Justify the choice of Minimal APIs with Carter/MediatR over traditional Controllers.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
        &lt;li&gt;&lt;strong&gt;Extras &amp; Advanced Patterns:&lt;/strong&gt;
            &lt;ul&gt;
                &lt;li&gt;Unit &amp; Integration Tests: Provide a sample unit test using a mocking framework and an integration test using WebApplicationFactory and an in-memory database (SQLite).&lt;/li&gt;
                &lt;li&gt;API Contracts/Versioning: Define a sample Request/Response Data Transfer Object (DTO) and show how API versioning would be managed.&lt;/li&gt;
            &lt;/ul&gt;
        &lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;&lt;strong&gt;Required Output Format:&lt;/strong&gt;&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;GitHub-Style Repository Layout (Zipped folder structure is too cumbersome).&lt;/li&gt;
        &lt;li&gt;Key Code Snippets for the most complex/opinionated components (e.g., Program.cs for setup, CorrelationMiddleware, an Endpoint Handler, and the HealthCheck setup).&lt;/li&gt;
        &lt;li&gt;Concise Commentary explaining the purpose and enterprise-grade nature of each architectural choice (e.g., Why OpenTelemetry? Why Transactional Outbox?).&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/blockquote&gt;

    &lt;h3&gt;🚚 Step 6: Delivery — Empower Teams&lt;/h3&gt;
    &lt;p&gt;Give teams a ready-to-go starter pack:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Repositories with orchestration samples.&lt;/li&gt;
        &lt;li&gt;Pipelines wired for tests and security scans.&lt;/li&gt;
        &lt;li&gt;Clear prompts and ADRs.&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Let developers vibe-code new features inside a safe, governed frame.&lt;/p&gt;

    &lt;h3&gt;🔁 Step 7: Continuous Feedback &amp; Evolution&lt;/h3&gt;
    &lt;p&gt;After first releases:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Review Azure Application Insights, cost dashboards, and Azure Advisor recommendations.&lt;/li&gt;
        &lt;li&gt;Update ADRs and templates with new lessons.&lt;/li&gt;
        &lt;li&gt;Host architecture office hours to guide teams and answer questions.&lt;/li&gt;
    &lt;/ul&gt;

    &lt;h3&gt;🧭 The Takeaway&lt;/h3&gt;
    &lt;p&gt;&lt;strong&gt;Vibe early, govern late.&lt;/strong&gt;&lt;/p&gt;
    &lt;p&gt;Architects don’t have to choose between speed and safety. With generative AI, you can prototype fast, validate early, and lock down standards as you move toward delivery.&lt;/p&gt;
    &lt;p&gt;This is the future of enterprise architecture: &lt;strong&gt;Lean, agile, AI-augmented, and business-aligned.&lt;/strong&gt;&lt;/p&gt;

    &lt;h3&gt;⚠️ Responsible Use of AI&lt;/h3&gt;
    &lt;p&gt;While generative AI can accelerate development and ideation, it is essential to:&lt;/p&gt;
    &lt;ul&gt;
        &lt;li&gt;Always &lt;strong&gt;review and vet AI-generated code&lt;/strong&gt; for security, performance, and compliance.&lt;/li&gt;
        &lt;li&gt;Ensure sensitive data is not exposed in prompts or outputs.&lt;/li&gt;
        &lt;li&gt;Validate architectural decisions with human oversight and domain expertise.&lt;/li&gt;
        &lt;li&gt;Use AI as a &lt;strong&gt;collaborative assistant&lt;/strong&gt;, not a replacement for critical thinking and governance.&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Responsible AI usage ensures that innovation remains safe, ethical, and aligned with enterprise standards.&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/307592708459499067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/307592708459499067'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2025/09/vibe-coding-for-architects-from-idea-to.html' title='Vibe Coding for Architects: From Idea to Impact'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-366720145853046088</id><published>2025-09-22T11:46:00.002+02:00</published><updated>2025-09-23T09:15:33.373+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="#agile #architecture #agilearchitecture #agileinarchitecture #safeagile #enterprisearchitecture"/><title type='text'>From Ivory Tower to Value Enabler: Reimagining Enterprise Architecture for Agile Value Streams</title><content type='html'>&lt;div style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; text-align: left;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;For years, Enterprise Architecture (EA) has carried the reputation of being an&amp;nbsp;&lt;/span&gt;&lt;strong style=&quot;color: #333333;&quot;&gt;ivory tower discipline&lt;/strong&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&amp;nbsp;— producing elegant diagrams and enforcing standards, but often disconnected from the realities of delivery. In today’s fast‑moving environment, that model no longer works.&lt;/span&gt;&lt;/div&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;Organizations need EA to be something different: an&amp;nbsp;&lt;strong&gt;embedded enabler of agility, value delivery, and strategic alignment&lt;/strong&gt;.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;This post is the result of a deliberate exercise. I explored multiple frameworks, tested different models, and reflected deeply on what truly works in practice. The conclusion? A&amp;nbsp;&lt;strong&gt;hybrid model&lt;/strong&gt;—anchored in&amp;nbsp;&lt;strong&gt;business capability mapping&lt;/strong&gt;&amp;nbsp;and structured through&amp;nbsp;&lt;strong&gt;value streams&lt;/strong&gt;—is what delivers the most impact.&lt;/p&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;🔗 Business Capabilities: The Stable Backbone&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;What They Are:&lt;/strong&gt;&lt;br /&gt;Business capabilities describe what an organization does to deliver value, independent of its internal structure, processes, or the systems it uses. Think of them as fundamental building blocks – &quot;Customer Relationship Management,&quot; &quot;Product Development,&quot; or &quot;Risk &amp;amp; Compliance.&quot; They are inherently stable, evolving slowly over time, if at all.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why They Matter:&lt;/strong&gt;&lt;br /&gt;This stability makes business capabilities the perfect anchor for any transformation. They provide a common, business-centric language that bridges the gap between technology teams and business stakeholders. By mapping capabilities, organizations can clearly see where to invest, identify areas of duplication or gaps, and prioritize modernization efforts based on actual business needs.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s Mandate:&lt;/strong&gt;&lt;br /&gt;Enterprise Architects are the curators and maintainers of the capability map. This map becomes the &quot;north star&quot; for critical decisions: guiding investment, shaping Agile Release Train (ART) design, and setting strategic modernization priorities. Capabilities aren&#39;t just a reference; they&#39;re the foundational anchor point for achieving true organizational agility.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoTPu3jZm1S0URvvRZJ1wM1DNtyy4iPp32fdeyl5bFEVqkHcOL3887YKOlrEammuVEGTQrLVXxBzRe70Kfufq24bTZD_K1JjkeY77g55LAiB_eWGeicOd8EZ7sgePXekR9oA0HP6Ks4wBMd1WegrnqQ5Uy4mXIPBAYtNpkqit_TJ5I1PCkgvnpeVzKoa8/s1024/Gemini_Generated_Image_4kanbe4kanbe4kan.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoTPu3jZm1S0URvvRZJ1wM1DNtyy4iPp32fdeyl5bFEVqkHcOL3887YKOlrEammuVEGTQrLVXxBzRe70Kfufq24bTZD_K1JjkeY77g55LAiB_eWGeicOd8EZ7sgePXekR9oA0HP6Ks4wBMd1WegrnqQ5Uy4mXIPBAYtNpkqit_TJ5I1PCkgvnpeVzKoa8/s320/Gemini_Generated_Image_4kanbe4kanbe4kan.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;🌊 Value Streams: The Flow of Value&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;What They Are:&lt;/strong&gt;&lt;br /&gt;Value streams represent the end-to-end series of steps an organization takes to deliver value to a customer or stakeholder. They are dynamic and process-oriented, illustrating the flow of work from initial trigger (like a customer request) to the final outcome. Examples include &quot;Order-to-Delivery&quot; or &quot;Customer Support Resolution.&quot;&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why They Matter:&lt;/strong&gt;&lt;br /&gt;While capabilities provide stability, value streams provide the context of movement and outcome. They force a focus on the customer&#39;s journey and help to identify bottlenecks, waste, and opportunities to improve efficiency. Value streams ensure that teams are not just working on tasks, but are directly contributing to a tangible, valuable outcome.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s Hybrid Model:&lt;/strong&gt;&lt;br /&gt;This is where the power of the hybrid model becomes clear. EA overlays value streams onto the stable capability map. This process identifies the intersections where value is delivered and allows teams to be structured around these intersections. It ensures that Agile Release Trains (ARTs) are aligned to customer value, not legacy systems, enabling strategic alignment, modular delivery, and scalable agility.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVWqhQ8aW3HPJODChTKhZuBB4yfdcuh8fRR2YbVGOr-uM1C8UcWYJhF1SJSWmTxa9T2YSJCOFj1V2udNkayTX5pHBdaOy15icHYYRrSbGkst6lxE11BlodKwWVzCN7uVZR2YCY6dOHT1kqG-IL9eJVJxa7t9uMe86tXjh8lbgKmGI1GxYGouu5z4kIb9U/s1024/Gemini_Generated_Image_4kanbd4kanbd4kan.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVWqhQ8aW3HPJODChTKhZuBB4yfdcuh8fRR2YbVGOr-uM1C8UcWYJhF1SJSWmTxa9T2YSJCOFj1V2udNkayTX5pHBdaOy15icHYYRrSbGkst6lxE11BlodKwWVzCN7uVZR2YCY6dOHT1kqG-IL9eJVJxa7t9uMe86tXjh8lbgKmGI1GxYGouu5z4kIb9U/s320/Gemini_Generated_Image_4kanbd4kanbd4kan.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;🤝 From Gatekeeper to Embedded Partner&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;What It Looks Like:&lt;/strong&gt;&lt;br /&gt;The traditional EA model positions architects as a separate review board—a &quot;gatekeeper&quot; that approves or rejects solutions. In the new model, EA shifts to an &quot;embedded partner,&quot; integrated directly into the day-to-day cadence of delivery teams.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why It Matters:&lt;/strong&gt;&lt;br /&gt;This fundamental shift transforms EA from a bottleneck into a force multiplier. Instead of slowing down delivery with rigid approvals, architects provide guardrails, reusable patterns, and reference architectures that accelerate a team’s ability to build sound solutions. Success is measured by flow efficiency and time-to-market, not by documents signed off.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s New Role:&lt;/strong&gt;&lt;br /&gt;Architects become active participants in Agile Release Train ceremonies like PI Planning and backlog refinement. They act as mentors and partners, guiding teams and ensuring compliance by design. This continuous engagement means architectural integrity is built in from the start, not checked for at the end.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0Cslx1xqI0zD5Dq9O5WYL-oJL-3asN77Pn0HYMRsBhYakSTvZUvFOGrq0iFyExzL_8xTwA2nyMQp1PGGckPz3TPGpzBAzjTpHtBau_NL-sIWFa__i5xYMGG77LDt7bkqNk5Uy83v8lHVaVekVQ6lATWjOGzk2YTpTT-1nQza5C-0k523f1YySkFlZb4o/s1024/Gemini_Generated_Image_4kanbb4kanbb4kan.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0Cslx1xqI0zD5Dq9O5WYL-oJL-3asN77Pn0HYMRsBhYakSTvZUvFOGrq0iFyExzL_8xTwA2nyMQp1PGGckPz3TPGpzBAzjTpHtBau_NL-sIWFa__i5xYMGG77LDt7bkqNk5Uy83v8lHVaVekVQ6lATWjOGzk2YTpTT-1nQza5C-0k523f1YySkFlZb4o/s320/Gemini_Generated_Image_4kanbb4kanbb4kan.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;🔁 Keeping Vision Alive Under Pressure&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;The Problem:&lt;/strong&gt;&lt;br /&gt;Delivery teams often begin an initiative aligned to the architectural vision, but under tight timelines and external pressure, they can drift toward tactical fixes and shortcuts. This &quot;architectural drift&quot; degrades the long-term health and coherence of the system.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why It Matters:&lt;/strong&gt;&lt;br /&gt;Preventing drift is crucial for maintaining a system that is resilient, scalable, and easy to maintain. A reactive approach, where architectural issues are only addressed at the end, is both costly and inefficient. Proactive, continuous alignment is essential for preserving the integrity of the vision.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s Solution:&lt;/strong&gt;&lt;br /&gt;EA combats this drift by creating continuous feedback loops. System demos serve as checkpoints for architectural enablers, not just features. Lightweight architecture syncs allow architects and delivery leads to review progress. By making architectural work part of the backlog and sharing OKRs, EA ensures that architectural integrity is preserved incrementally and is never optional.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSjR5w9rT8dLGM2DetIVBeIF0qqP6NegY83c_RrmZQ7p0GtuGI_36jrdgWHyaouyclmh-YRIQODzs3EdnFrQmjdpbUsNGhfZsk2W87cK46ALen8XGI9lT8tkpFN_9T4jhiynoVuvNigHd4ScyrI-HxkEVkZfTY0Cw3E9lN6IGsaxXMY4SvnBoWj877IGU/s1024/Gemini_Generated_Image_4kanba4kanba4kan.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSjR5w9rT8dLGM2DetIVBeIF0qqP6NegY83c_RrmZQ7p0GtuGI_36jrdgWHyaouyclmh-YRIQODzs3EdnFrQmjdpbUsNGhfZsk2W87cK46ALen8XGI9lT8tkpFN_9T4jhiynoVuvNigHd4ScyrI-HxkEVkZfTY0Cw3E9lN6IGsaxXMY4SvnBoWj877IGU/s320/Gemini_Generated_Image_4kanba4kanba4kan.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;⚡ Dynamic Team Formation&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;The Challenge:&lt;/strong&gt;&lt;br /&gt;Some initiatives—like a cybersecurity uplift, a new regulatory change, or a data modernization effort—cut across multiple value streams. A rigid, siloed organizational structure struggles to respond to these cross-cutting needs.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why It Matters:&lt;/strong&gt;&lt;br /&gt;An organization&#39;s ability to respond to these types of initiatives is a key indicator of its agility. It requires the flexibility of a startup with the discipline of an enterprise. Static, fixed teams can&#39;t effectively handle work that spans different parts of the business.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s Enabler:&lt;/strong&gt;&lt;br /&gt;EA provides the model for dynamic team formation. Temporary squads are &quot;spun up&quot; for focused outcomes, anchored in capabilities to prevent the creation of new silos. Once the uplift is complete and embedded, the squads are dissolved. This model provides the flexibility to respond to enterprise-wide needs without creating permanent, disconnected teams.&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr5QQVqwbBfbZcK6Fxc2WVVUnVJTuXbxv59Ua9EG8tP3C1nu8j17Wk0NjX9zgRzFvq3pwRqBJdHiF-5SdbWMt0C_HhnMK-tyAJOD2rSH9bvSV4gC1f_ud3BRbXHDTmYREF1pC8w6HHfwn4pVmLM6cBsJZKTLC2SK-o9tMiVMDOb07Q29hjfzoUyg1AKpY/s1024/Gemini_Generated_Image_4kanb94kanb94kan.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1024&quot; data-original-width=&quot;1024&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr5QQVqwbBfbZcK6Fxc2WVVUnVJTuXbxv59Ua9EG8tP3C1nu8j17Wk0NjX9zgRzFvq3pwRqBJdHiF-5SdbWMt0C_HhnMK-tyAJOD2rSH9bvSV4gC1f_ud3BRbXHDTmYREF1pC8w6HHfwn4pVmLM6cBsJZKTLC2SK-o9tMiVMDOb07Q29hjfzoUyg1AKpY/s320/Gemini_Generated_Image_4kanb94kanb94kan.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;📈 Governance Through Outcomes&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;The Shift:&lt;/strong&gt;&lt;br /&gt;Modern governance is no longer about a series of rigid approvals and documentation. It&#39;s about empowering teams and measuring success based on actual outcomes.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;Why It Matters:&lt;/strong&gt;&lt;br /&gt;Outcome-based governance is directional and enabling, not restrictive. It aligns all work directly to business goals and a strategic vision. Metrics that truly matter—like flow efficiency, business outcomes, and compliance by design—replace bureaucratic checklists.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;&lt;strong&gt;EA&#39;s Role:&lt;/strong&gt;&lt;br /&gt;EA ensures that portfolio epics align to both value streams and the architectural runway, connecting the work of delivery teams to the strategic themes of the organization. This guarantees that every project ladders up to key modernization goals—like becoming cloud-native, API-first, or data-driven—and drives the enterprise toward its desired future state.&lt;/p&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;🧠 The Leadership Imperative&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;For senior leaders, the message is clear:&lt;/p&gt;&lt;ul style=&quot;color: #333333; font-family: Arial, sans-serif; margin-left: 1.5em;&quot;&gt;&lt;li&gt;EA is no longer a cost center — it’s a value enabler.&lt;/li&gt;&lt;li&gt;Capabilities provide stability, value streams provide flow, and EA provides coherence.&lt;/li&gt;&lt;li&gt;The result is an operating model that is both agile and strategically aligned.&lt;/li&gt;&lt;/ul&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;This hybrid model is not just a framework—it’s a mindset shift that positions architecture as a core business capability.&lt;/p&gt;&lt;hr style=&quot;border-bottom: none; border-image: initial; border-left: none; border-right: none; border-top-color: rgb(204, 204, 204); border-top-style: solid; font-family: Arial, sans-serif; margin: 2em 0px;&quot; /&gt;&lt;h2 style=&quot;color: #1a4e8a; font-family: Arial, sans-serif; margin-top: 2em;&quot;&gt;💬 Closing Thought&lt;/h2&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;The real test of modern Enterprise Architecture is not the elegance of its diagrams, but its ability to stay alive in the trenches of delivery. By embedding architects in ARTs, creating continuous feedback loops, and making architecture part of the backlog, organizations can ensure the vision is realized incrementally.&lt;/p&gt;&lt;p style=&quot;color: #333333; font-family: Arial, sans-serif;&quot;&gt;This is how EA stops being an ivory tower and becomes the bridge between strategy and execution—the enabler of value at scale.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/366720145853046088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/366720145853046088'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2025/09/from-ivory-tower-to-value-enabler.html' title='From Ivory Tower to Value Enabler: Reimagining Enterprise Architecture for Agile Value Streams'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoTPu3jZm1S0URvvRZJ1wM1DNtyy4iPp32fdeyl5bFEVqkHcOL3887YKOlrEammuVEGTQrLVXxBzRe70Kfufq24bTZD_K1JjkeY77g55LAiB_eWGeicOd8EZ7sgePXekR9oA0HP6Ks4wBMd1WegrnqQ5Uy4mXIPBAYtNpkqit_TJ5I1PCkgvnpeVzKoa8/s72-c/Gemini_Generated_Image_4kanbe4kanbe4kan.png" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-1269439162628184175</id><published>2025-09-04T10:31:00.006+02:00</published><updated>2025-09-04T11:47:11.919+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="#agile #architecture #agilearchitecture #agileinarchitecture #safeagile #enterprisearchitecture"/><title type='text'>The Role of Architecture in an Agile Release Train</title><content type='html'>&lt;p&gt;In agile delivery, architecture isn’t just about structure — it’s about enabling flow, clarity, and reuse. When embedded into the Agile Release Train, architecture delivers three things that matter most:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Robustness&lt;/strong&gt; — scalable, secure foundations that support transformation&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Utility&lt;/strong&gt; — reusable assets, clear traceability, and business-aligned design&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Elegance&lt;/strong&gt; — solutions that teams understand, extend, and take pride in&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;&lt;em&gt;“Firmness, commodity, and delight.”&lt;/em&gt;&lt;br&gt;— Vitruvius&lt;/blockquote&gt;

&lt;p&gt;That quote has endured for centuries, and it still applies. Architecture must deliver all three — not just in buildings, but in systems, platforms, and delivery frameworks.&lt;/p&gt;

&lt;h3&gt;🔍 Why Architecture Must Be Embedded in Agile&lt;/h3&gt;

&lt;p&gt;Agile delivery without architecture is like a train without tracks — fast-moving, but directionless. In large-scale agile environments like SAFe, architecture isn’t a peripheral concern; it’s a foundational enabler of flow, alignment, and business agility.&lt;/p&gt;

&lt;p&gt;When embedded properly, architecture:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Aligns delivery with strategic business capabilities&lt;/li&gt;
  &lt;li&gt;Enables reuse through shared APIs, data models, and frameworks&lt;/li&gt;
  &lt;li&gt;Surfaces contradictions early between business cases and delivery scope&lt;/li&gt;
  &lt;li&gt;Supports compliance, security, and scalability without waterfall overhead&lt;/li&gt;
  &lt;li&gt;Empowers teams to make decisions with guardrails, not gatekeeping&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Architecture must shift from being a checkpoint to being a co-pilot — shaping backlogs, guiding design, and enabling flow.&lt;/p&gt;

&lt;h3&gt;🧩 The Five Roles of Architecture in the ART&lt;/h3&gt;

&lt;table border=&quot;1&quot; cellpadding=&quot;6&quot; cellspacing=&quot;0&quot;&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;Architecture Type&lt;/th&gt;
      &lt;th&gt;Role in the ART&lt;/th&gt;
      &lt;th&gt;Embedded Practices&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;strong&gt;Enterprise Architecture&lt;/strong&gt;&lt;/td&gt;
      &lt;td&gt;Sets strategic direction, capability maps, and transformation goals&lt;/td&gt;
      &lt;td&gt;Capability-based planning, OKR traceability, reusable reference models&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;strong&gt;Business Architecture&lt;/strong&gt;&lt;/td&gt;
      &lt;td&gt;Aligns delivery to business capabilities, value streams, and outcomes&lt;/td&gt;
      &lt;td&gt;Value stream modeling, business case validation, capability-to-feature mapping&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;strong&gt;Solution Architecture&lt;/strong&gt;&lt;/td&gt;
      &lt;td&gt;Designs cross-team solutions aligned to business outcomes&lt;/td&gt;
      &lt;td&gt;SAFe-aligned design templates, collaborative handoffs, architecture reviews&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;strong&gt;System Architecture&lt;/strong&gt;&lt;/td&gt;
      &lt;td&gt;Implements technical patterns, APIs, and infrastructure&lt;/td&gt;
      &lt;td&gt;DevSecOps enablement, async patterns, reusable components, telemetry&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;strong&gt;Data Architecture&lt;/strong&gt;&lt;/td&gt;
      &lt;td&gt;Enables trusted, reusable, and governed data across solutions and teams&lt;/td&gt;
      &lt;td&gt;Canonical models, data contracts, lineage mapping, compliance-by-design&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h3&gt;🛠️ Embedding Architecture into Agile Practices&lt;/h3&gt;

&lt;p&gt;To make architecture a living part of the ART, we must:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Use SAFe-aligned solution design templates that map capabilities to features, trace decisions, and define measurable outcomes&lt;/li&gt;
  &lt;li&gt;Collaborate early with feature analysts to shape epics and stories with architectural context&lt;/li&gt;
  &lt;li&gt;Run architecture reviews as learning forums — focusing on trade-offs, reuse, and alignment&lt;/li&gt;
  &lt;li&gt;Operationalize architecture metrics that show value: reuse rates, flow efficiency, compliance coverage&lt;/li&gt;
  &lt;li&gt;Create reusable assets — APIs, data models, correspondence services — that teams can plug into with minimal friction&lt;/li&gt;
  &lt;li&gt;Embed data lineage and telemetry into delivery pipelines to drive continuous improvement&lt;/li&gt;
  &lt;li&gt;Align architecture with business outcomes, not just technical patterns&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Architecture isn’t a phase. It’s a mindset, a set of practices, and a shared language across business and technology.&lt;/p&gt;

&lt;h3&gt;🧠 Architecture as a System of Enablement&lt;/h3&gt;

&lt;p&gt;When embedded properly, architecture becomes a strategic enabler of agility, not a constraint. It guides without dictating, enables without obstructing, and evolves with every PI.&lt;/p&gt;

&lt;p&gt;Here’s how the domains interlock:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Enterprise Architecture&lt;/strong&gt; ensures strategic alignment and transformation traceability&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Business Architecture&lt;/strong&gt; connects delivery to value streams and capabilities&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Solution Architecture&lt;/strong&gt; designs for outcomes, reuse, and cross-team cohesion&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;System Architecture&lt;/strong&gt; delivers scalable, secure, and observable implementations&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Data Architecture&lt;/strong&gt; fuels insight, trust, and compliance across the ecosystem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This isn’t architecture as documentation — it’s architecture as flow.&lt;/p&gt;

&lt;h3&gt;🚀 Conclusion: Leading with Architecture in the ART&lt;/h3&gt;

&lt;p&gt;In a high-performing ART, architecture isn’t just present — it’s pervasive. It’s embedded in planning, backlog refinement, design, and delivery. It’s visible in metrics, reusable in assets, and traceable to business outcomes.&lt;/p&gt;

&lt;p&gt;As we modernize legacy estates and shift toward modular, API-first ecosystems, the role of architecture will only grow in importance. It’s time to stop asking whether architecture fits into agile — and start showing how it leads it.&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1269439162628184175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1269439162628184175'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2025/09/the-role-of-architecture-in-agile.html' title='The Role of Architecture in an Agile Release Train'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-3007035526326881047</id><published>2022-12-08T17:27:00.001+02:00</published><updated>2022-12-08T17:28:15.756+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="#algotrading #free"/><category scheme="http://www.blogger.com/atom/ns#" term="#crash500"/><category scheme="http://www.blogger.com/atom/ns#" term="#deriv"/><category scheme="http://www.blogger.com/atom/ns#" term="#forex"/><category scheme="http://www.blogger.com/atom/ns#" term="#indice"/><category scheme="http://www.blogger.com/atom/ns#" term="#mql5"/><category scheme="http://www.blogger.com/atom/ns#" term="#mt5"/><category scheme="http://www.blogger.com/atom/ns#" term="#simplersi"/><category scheme="http://www.blogger.com/atom/ns#" term="#synthetic"/><category scheme="http://www.blogger.com/atom/ns#" term="#trading"/><title type='text'>SYNTHETIC CRASH 500 RSI INDICATOR</title><content type='html'>&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Hi and thank you for visiting my blog.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Let&#39;s talk EA&#39;s and strategy, the easiest EA to use with Crash 500 is the RSI, and simply put, you can sell based on the value, I created a simple EA which monitors the RSI value and then in turn would print a simple arrow on the chart when the RSI reaches specific levels.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;You may find it useful, but you also may not find it useful.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;What I can say, is that most of the BOTS I have seen for Crash 500 uses this simple strategy and sells with a wide SL when the RSI reaches specific levels.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;You could take this EA and turn it into a simple BOT by simply adding in the trade function together with trailing stops.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;You can download the EA &lt;a href=&quot;https://drive.google.com/file/d/1QrejrpBif27c_TF339xrykriV1xQ81mv/view?usp=sharing&quot;&gt;here&lt;/a&gt;, simply add it to your chart and you are good to go. A word of warning, this EA simply uses RSI, so ensure you are analyzing the charts in conjunction with this EA in order to take entry. If you simply follow this EA you will lose money.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;In my next post, let me know if I should discuss how to create a simple BOT using this strategy.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;I can also show you how you can simply leverage market direction in order to make this EA more accurate.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;*NB, trading is risky, many people lose money when trading forex pairs.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;*NB, this is not financial advice, nor am I qualified to provide it.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3007035526326881047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3007035526326881047'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2022/12/synthetic-crash-500-rsi-indicator.html' title='SYNTHETIC CRASH 500 RSI INDICATOR'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-2605243339396616694</id><published>2022-11-30T09:13:00.006+02:00</published><updated>2022-11-30T15:29:55.561+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="crash500"/><category scheme="http://www.blogger.com/atom/ns#" term="deriv"/><category scheme="http://www.blogger.com/atom/ns#" term="forex"/><category scheme="http://www.blogger.com/atom/ns#" term="indice"/><category scheme="http://www.blogger.com/atom/ns#" term="mt5"/><category scheme="http://www.blogger.com/atom/ns#" term="rsiindicator"/><category scheme="http://www.blogger.com/atom/ns#" term="synthetic"/><category scheme="http://www.blogger.com/atom/ns#" term="trading"/><category scheme="http://www.blogger.com/atom/ns#" term="tradinglevels"/><title type='text'>SYNTHETIC CRASH 500 INDEX</title><content type='html'>&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;Hi, and thank you for coming over to my blog.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;First off, do you understand Forex? Do you understand what a synthetic indices are and which broker offers these as tradeable.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;So if you are new, a sythetic indice in a nutshell is an indice that is not affected by fundamentals.These are typically offered by a broker called DERIV. The most common traded pairs are VIX 75 which offers a great ROI.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;But, let&#39;s chat about Crash 500, there are many strategies available on the internet and many videos which show different types of trading strategies. The easiest and most common is to use price action and then the RSI indicator, the simplest method is to sell when RSI hits 90 (using 1m timeframe) and hold based on different levels.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;Go have a look at the chart 90% of the time Crash 500 fall after it its the 80 or 90 levels on the RSI, its a simple way to get you started with a synthetic index and Deriv.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: verdana; font-size: x-small;&quot;&gt;If you have not registered a Deriv Account, you can register by following this &lt;a href=&quot;https://track.deriv.com/_Z2zQlFIWGKJBMfcXPt5VjGNd7ZgqdRLk/1/&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2605243339396616694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2605243339396616694'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2022/11/synthetic-crash-500-index.html' title='SYNTHETIC CRASH 500 INDEX'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-7794607727011804093</id><published>2022-07-18T16:18:00.000+02:00</published><updated>2022-07-18T16:18:04.705+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="appsettings.json"/><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="dotnet core"/><category scheme="http://www.blogger.com/atom/ns#" term="nunit testing"/><title type='text'>Loading appsettings.json in a different project type</title><content type='html'>&lt;span style=&quot;font-family: verdana;&quot;&gt;So I found myself in a situation where I needed to access data stored in a configuration file for a DOTNET Core project, so I dug around and found that a few steps are required which are listed below:&amp;nbsp;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Add references to the following Nuget packages&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0 0 0 40px; padding: 0px;&quot;&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgsgIW_d5156UQcZgMoOUE7uEqorirAI8xFV9JP6YQRIocci2Kcq3iDIeZvvl_dUd4AAF9zMvjHYaSlRU9hASKnK6q1x5c6ktS75-nLM4fMpZkpN6MhvtyMCGbi7uxY7QpCsAlDntjVp1_aDJWvq6rBQJW06E6UGrtVqumAw8Q2aZnfw8_RVyyCFH8O&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;68&quot; data-original-width=&quot;367&quot; height=&quot;59&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgsgIW_d5156UQcZgMoOUE7uEqorirAI8xFV9JP6YQRIocci2Kcq3iDIeZvvl_dUd4AAF9zMvjHYaSlRU9hASKnK6q1x5c6ktS75-nLM4fMpZkpN6MhvtyMCGbi7uxY7QpCsAlDntjVp1_aDJWvq6rBQJW06E6UGrtVqumAw8Q2aZnfw8_RVyyCFH8O&quot; width=&quot;320&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Add your empty appsettings.json file to the root of your project&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Add the below code entry:&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote style=&quot;border: none; margin: 0 0 0 40px; padding: 0px;&quot;&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEju2bge3yufhr2lc4kCZhfcxSx7XWqWm8HZxvzDaj-gNORJoBHkJlkUr9vEyXcb6ddX-G_ZEsRscAfKbl_OHQgY3KbtiGu-gYAdhTUYW2gqxizhOQNfVUMu2vd2Z5ajp9qX2_p5Jo3eumI8Q6LmNnI-KFgxoR2WemDxLgBWGCcomBUTv_nMSc4o6mAd&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;82&quot; data-original-width=&quot;401&quot; height=&quot;65&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEju2bge3yufhr2lc4kCZhfcxSx7XWqWm8HZxvzDaj-gNORJoBHkJlkUr9vEyXcb6ddX-G_ZEsRscAfKbl_OHQgY3KbtiGu-gYAdhTUYW2gqxizhOQNfVUMu2vd2Z5ajp9qX2_p5Jo3eumI8Q6LmNnI-KFgxoR2WemDxLgBWGCcomBUTv_nMSc4o6mAd&quot; width=&quot;320&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: verdana;&quot;&gt;Once complete you should be able to access the appsettings as you usually do in any dotnet core web project.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7794607727011804093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7794607727011804093'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2022/07/loading-appsettingsjson-in-different.html' title='Loading appsettings.json in a different project type'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEgsgIW_d5156UQcZgMoOUE7uEqorirAI8xFV9JP6YQRIocci2Kcq3iDIeZvvl_dUd4AAF9zMvjHYaSlRU9hASKnK6q1x5c6ktS75-nLM4fMpZkpN6MhvtyMCGbi7uxY7QpCsAlDntjVp1_aDJWvq6rBQJW06E6UGrtVqumAw8Q2aZnfw8_RVyyCFH8O=s72-c" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-1674326733335825804</id><published>2013-06-06T13:19:00.000+02:00</published><updated>2019-12-31T00:19:14.147+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Custom Web Part"/><category scheme="http://www.blogger.com/atom/ns#" term="Powershell"/><category scheme="http://www.blogger.com/atom/ns#" term="Scripting"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><title type='text'>Deleting a WebPart from the WebParts Gallery using PowerShell</title><content type='html'>&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;So you have a requirement to remove a webpart or multiple webparts from the webparts gallery in SharePoint and you need to do this with Windows PowerShell. One thing to remember is that the webparts gallery is the same as any other gallery in SharePoint and your task can easily be achieved using PowerShell. The below code will remove a webpart from the webparts gallery:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;function RemoveWebPartsFromGallery([string]$siteUrl)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;# an array of the custom webparts that were built;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$customWebPart = New-Object System.Collections.ObjectModel.Collection[System.String]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$customWebPart.Add(&quot;CustomWebPart&quot;)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$site = Get-SPSite $siteUrl&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;# the default SP type for a webpart gallery;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$wpCatalog = [Microsoft.SharePoint.SPListTemplateType]::WebPartCatalog&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$list = $site.GetCatalog($wpCatalog)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$wpID = New-Object System.Collections.ObjectModel.Collection[System.Int32]&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;foreach ($item in $list.items)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;foreach ($wps in $customWebPart)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;if ($item.Name.ToLower().Equals($wps))&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;$wpID.Add($item.ID)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;    &lt;/span&gt;continue&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;   &lt;/span&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;foreach ($i in $wpID)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;$wpitem = $list.GetItemById($i)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;$wpItem.Delete()&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;$list.Update()&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;Write-Host &quot;WEBPARTS REMOVED FROM GALLERY&quot; -ForegroundColor Green&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif; font-size: x-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;You can check out the original script &lt;a href=&quot;http://srichallagolla.blogspot.com/2012/11/how-to-delete-webparts-from-webpart.html&quot; target=&quot;_blank&quot;&gt;here &lt;/a&gt;a big thanks to&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;Srinivas Challagolla for the script.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;The script has greatly helped me I hope that it has helped you. Happy scripting guys :-)&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1674326733335825804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1674326733335825804'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/06/deleting-webpart-from-webparts-gallery.html' title='Deleting a WebPart from the WebParts Gallery using PowerShell'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-1907064144257778541</id><published>2013-05-29T16:12:00.004+02:00</published><updated>2013-05-29T16:13:56.492+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Feature Activation"/><category scheme="http://www.blogger.com/atom/ns#" term="Powershell"/><category scheme="http://www.blogger.com/atom/ns#" term="Scripting"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Test Case"/><category scheme="http://www.blogger.com/atom/ns#" term="Silverlight Deployment"/><title type='text'>STSADM VS POWERSHELL SOLUTION DEPLOYMENT</title><content type='html'>&lt;h2&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;PowerShell Deployments&lt;/span&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So everyone is familar with STSADM command prompt and we have all learned to love it. So now we have PowerShell, so to get you started please have a look at the following links which are great resources to get you started for deploying a &quot;WSP&quot; Package using powershell.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;a href=&quot;http://patrickboom.wordpress.com/2010/05/31/using-powershell-to-deploy-sharepoint-solutions-wsp-2/&quot; target=&quot;_blank&quot;&gt;Patrick Boom&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;a href=&quot;http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2009/12/02/adding-and-deploying-solutions-with-powershell-in-sharepoint-2010.aspx&quot; target=&quot;_blank&quot;&gt;Corey Roth&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;There are many more resources available out there - but those are the two I decided to use. You can see the basic commands for deployment below:&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h4&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Add Solution&lt;/span&gt;&lt;/h4&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;ADD-SPSOLUTION [SOLUTION LOCATION]&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;h4&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Deploy Solution&lt;/span&gt;&lt;/h4&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;INSTALL-SPSOLUTION -IDENTITY [SOLUTION NAME] -GACDEPLOYMENT -WEBAPPLICATION [URL]&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;You can also check out a few MSDN articles:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms442691(v=office.14).aspx&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;http://msdn.microsoft.com/en-us/library/ms442691(v=office.14).aspx&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;http://technet.microsoft.com/en-us/library/ff607803.aspx&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;http://technet.microsoft.com/en-us/library/ff607803.aspx&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;a href=&quot;http://technet.microsoft.com/en-us/library/ff607552.aspx&quot;&gt;http://technet.microsoft.com/en-us/library/ff607552.aspx&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Hope these articles help you out :-)&lt;/span&gt;&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1907064144257778541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/1907064144257778541'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/stsadm-vs-powershell-solution-deployment.html' title='STSADM VS POWERSHELL SOLUTION DEPLOYMENT'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-3859931413747510647</id><published>2013-05-29T15:41:00.002+02:00</published><updated>2013-05-29T15:42:51.597+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Configuration"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><title type='text'>SharePoint Timer Jobs</title><content type='html'>&lt;h2&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;How to create a SharePoint 2010 Timer Job...&lt;/span&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So I have finally found sometime to create a post on how to create a SharePoint 2010 timer job. I had a look around and found many, many post already out there and they are awesome.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Please have a look at&amp;nbsp;&lt;a href=&quot;http://www.andrewconnell.com/Creating-Custom-SharePoint-Timer-Jobs&quot; target=&quot;_blank&quot;&gt;Andrew Connels&lt;/a&gt;&amp;nbsp;blog post as it is a great resource to use for creating SharePoint timer jobs.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Another resource that I found very useful was&amp;nbsp;&lt;a href=&quot;http://www.mssharepointtips.com/tip.asp?id=1021&quot; target=&quot;_blank&quot;&gt;SharePoint Tips&lt;/a&gt;&amp;nbsp;for creating various timer job schedules.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So happy coding everyone, I hope these resources can help you.&lt;/span&gt;&lt;/div&gt;
</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3859931413747510647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3859931413747510647'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/create-sharepoint-timer-job.html' title='SharePoint Timer Jobs'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-4383899824856937771</id><published>2013-05-14T09:44:00.001+02:00</published><updated>2013-05-14T09:45:20.117+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="MasterPage"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><title type='text'>Deploy SharePoint 2010 master page using a module</title><content type='html'>&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So this post may or may not be a bit overdue, but deploying various files with a module makes life for us as developers pretty simple. In this post I will detail the steps to deploy your custom developed SharePoint 2010 master page into the master page gallery.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So the first step is to create a new module in Visual Studio&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXmGYZ3ygMo4Gh_BNLjGwrbO2uxyZdfjhzN4Kot6oSoVSDbuqgHON7AqnRiKiRVugsB810UoUEhg9n2lMYx73Wpgyxwooa7ScoKmmNEOC5FBdUv4SNeSP93j8jzsO2L4OW_29mjHPQPBY/s1600/NewModule.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;312&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXmGYZ3ygMo4Gh_BNLjGwrbO2uxyZdfjhzN4Kot6oSoVSDbuqgHON7AqnRiKiRVugsB810UoUEhg9n2lMYx73Wpgyxwooa7ScoKmmNEOC5FBdUv4SNeSP93j8jzsO2L4OW_29mjHPQPBY/s320/NewModule.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;By default the following files below are you created for you when a module is created, you can go ahead and delete the &quot;Sample.txt&quot; file as we will add our master page shortly.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmht6bhLUomB9-FBVLskYUY8SRNiYzglxMmEQxaTcbzrT338e_yuiwDi0wXH5bp-Qvs3c45UoGf1ZJfMQPWFMyY0HhxFI6M7Pb2drH20fkUB5ha0FH_6ePYX03VJxd3dc_01iWtxPzIFk/s1600/Files+Created.PNG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;93&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmht6bhLUomB9-FBVLskYUY8SRNiYzglxMmEQxaTcbzrT338e_yuiwDi0wXH5bp-Qvs3c45UoGf1ZJfMQPWFMyY0HhxFI6M7Pb2drH20fkUB5ha0FH_6ePYX03VJxd3dc_01iWtxPzIFk/s320/Files+Created.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;You can down download a fantastic starter master create by&amp;nbsp;&lt;a href=&quot;http://blog.drisgill.com/&quot; target=&quot;_blank&quot;&gt;Randy Drisgill&lt;/a&gt;&amp;nbsp;from the following&amp;nbsp;&lt;a href=&quot;http://blog.drisgill.com/2010/10/starter-master-pages-update-october-8th.html&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Once you have downloaded the master page, add the master into the module.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Now once the master page has been added - open the &quot;Elements.xml&quot; file and add replace with the following:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL677OifjYE2kapNb4Y1aUmt7arE2digtS8CVVnBnXmsc9fchjBkIMv0P1h4bO4kyQzAQbRFZNd8-BOMVN3F2OxOevHb4NqzEcoRMnQ_XX2krA-_1VAK5wC3W6fpV6R1T_49TcHGd5TDY/s1600/Elements.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;113&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL677OifjYE2kapNb4Y1aUmt7arE2digtS8CVVnBnXmsc9fchjBkIMv0P1h4bO4kyQzAQbRFZNd8-BOMVN3F2OxOevHb4NqzEcoRMnQ_XX2krA-_1VAK5wC3W6fpV6R1T_49TcHGd5TDY/s640/Elements.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: x-small;&quot;&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;And it is as simple as that - you can now deploy your custom built master page into the master page gallery with ease. I hope that this post has helped you.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Happy Branding :-)&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4383899824856937771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4383899824856937771'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/deploy-sharepoint-2010-master-page.html' title='Deploy SharePoint 2010 master page using a module'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXmGYZ3ygMo4Gh_BNLjGwrbO2uxyZdfjhzN4Kot6oSoVSDbuqgHON7AqnRiKiRVugsB810UoUEhg9n2lMYx73Wpgyxwooa7ScoKmmNEOC5FBdUv4SNeSP93j8jzsO2L4OW_29mjHPQPBY/s72-c/NewModule.png" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-8105834393323509875</id><published>2013-05-14T09:07:00.001+02:00</published><updated>2013-05-14T09:07:38.741+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Test Case"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Test Matrix"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Testing"/><category scheme="http://www.blogger.com/atom/ns#" term="Testing"/><title type='text'>SharePoint 2010 Test Cases including Test Matrix</title><content type='html'>&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;In the last few months we were tasked to create test cases including a test matrix for what was developed in our SharePoint 2010 solution. So I started out on my Google Search trying to find a generic test document which I can reuse across my site as I did not want to write any test cases for the OTB functionality that SharePoint offers.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I found this&amp;nbsp;&lt;a href=&quot;https://www.google.co.za/url?sa=t&amp;amp;rct=j&amp;amp;q=&amp;amp;esrc=s&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CDIQFjAA&amp;amp;url=http%3A%2F%2Fwww.rharbridge.com%2Fwp-content%2Fuploads%2F2010%2F08%2FSharePoint-Test-Plan.docx&amp;amp;ei=utmRUePJEYKChQeEqIGIBw&amp;amp;usg=AFQjCNHTjPDQydZLJf8wTzUPMygFnVs3qg&amp;amp;sig2=rE0JVrFm5Uwh4S26liup9w&amp;amp;bvm=bv.46471029,d.ZG4&amp;amp;cad=rja&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt;&amp;nbsp;to provide good guidance in formulating a test plan as well as a test matrix document.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;There are various other sources available on the Internet, but I have found the one mentioned above most useful for my specific requirements.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I hope this helps :-)&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/8105834393323509875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/8105834393323509875'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/sharepoint-2010-test-cases-including.html' title='SharePoint 2010 Test Cases including Test Matrix'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-4043962262479639325</id><published>2013-05-09T14:54:00.002+02:00</published><updated>2013-05-13T20:16:34.371+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Powershell"/><category scheme="http://www.blogger.com/atom/ns#" term="Scripting"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><title type='text'>How to create a site collection and specify the content database</title><content type='html'>&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;So pretty much everyone knows how to create a new site collection, but what is not so simple is creating a new site collection in a content database which you specified. This can easily be achieved using some powershell, as shown below:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$SITECOLLECTION = Read-Host &quot;What is the name of the site collection you wish to add?&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$SITEDESCRIPTION = Read-Host &quot;What is the site collection description?&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$SITEURL = Read-Host &quot;What is the URL of the site you wish to add?&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$SITEADMINISTRATOR = Read-Host &quot;Who is the site collection administrator?&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$DATABASENAME = Read-Host &quot;In which content database do you wish to add this site collection?&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$SITETEMPLATE = &quot;CMSPUBLISHING#0&quot; # --&amp;gt; THIS IS SITE TEMPLATE FOR PUBLISHING SITE&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;# CHECK IF CONTENT DATABASE EXIST&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;$CONTENTDB = Get-SPContentDatabase -identity $DATABASENAME&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;# IF CONTENT DB EXISTS WE WILL ADD SITE COLLECTION AND USE CONTENT DB SPECIFIED ELSE DISPLAY ERROR MSG&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;If (!$CONTENTDB)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;Write-Host &quot;The specified content database has not been found - PLEASE TRY AGAIN&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;Write-Host &quot;SITE COLLECTION CREATION STARTED&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;New-SPSite -Name $SITECOLLECTION -Url $SITEURL -Template $SITETEMPLATE -OwnerAlias $SITEADMINISTRATOR -ContentDatabase $CONTENTDB -Description $SITEDESCRIPTION&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;Write-Host &quot;SITE COLLECTION CREATION COMPLETE&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif; font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;I hope this helps you as it did me.&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4043962262479639325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4043962262479639325'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/how-to-create-site-collection-in.html' title='How to create a site collection and specify the content database'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-2361545657766166786</id><published>2013-05-08T11:39:00.001+02:00</published><updated>2013-05-08T11:39:14.875+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="User Profile Manager"/><category scheme="http://www.blogger.com/atom/ns#" term="User Profile Service"/><title type='text'>How to retrieve s user profile in SharePoint 2010</title><content type='html'>&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;The below code will show how to retrieve a user profile using the SharePoint object model&lt;br /&gt;&lt;br /&gt;The following references are required:&lt;/span&gt;&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;Microsoft.Office.Server&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;Microsoft.Office.Server.UseProfiles&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;Microsoft.SharePoint&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;System.Web&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private UserProfiles.UserProfile GetCurrentUserProfile(SPUser currentUser, string siteCollectionUrl)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (var site = new SPSite(siteCollectionUrl))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var serverContext = SPServiceContext.GetContext(site);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var profileManager = new UserProfileManager(serverContext);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var userProfile = profileManager.GetUserProfile(currentUser.RawSid);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return userProfile != null ? userProfile : null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception ex)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &lt;span style=&quot;font-size: xx-small;&quot;&gt;Handle error and write them to a log&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;I hope this has helped you, please feel free to drop me a note if you have any questions. &lt;/span&gt;&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2361545657766166786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2361545657766166786'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/how-to-retrieve-s-user-profile-in.html' title='How to retrieve s user profile in SharePoint 2010'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-5762786428851252801</id><published>2013-05-08T11:18:00.003+02:00</published><updated>2013-05-08T13:04:10.404+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Search"/><title type='text'>Default user profile properties</title><content type='html'>&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;If you ever need to figure out what are the default user profiles properties provided by SharePoint 2010 - you can follow this &lt;a href=&quot;http://technet.microsoft.com/en-us/library/hh147513(v=office.14).aspx&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt;. &lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;You may also want to have a look at the Microsoft.Office.Server.UserProfiles.PropertyConstants class, you may find it &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms549392%28v=office.14%29.aspx&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-family: Verdana,sans-serif;&quot;&gt;I hope this has helped you as it did me.&lt;/span&gt; &lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/5762786428851252801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/5762786428851252801'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2013/05/default-user-profile-properties.html' title='Default user profile properties'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-7147907521071721457</id><published>2012-07-14T17:59:00.000+02:00</published><updated>2012-07-14T17:59:50.191+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Powershell"/><category scheme="http://www.blogger.com/atom/ns#" term="Scripting"/><title type='text'>How to loop through all SPWeb object in your SharePoint site using Powershell</title><content type='html'>If ever you need to loop through all your SPWeb object in a SharePoint site for whatever reason and you want to do it in powershell. Try out the below code snippet. It worked for me, hope it can help you.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
Remove-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue&lt;br /&gt;Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue&lt;br /&gt;&lt;br /&gt;$siteUrl = read-host &quot;What is your site url? Eg: http://mysharepointpotal&quot;&lt;br /&gt;$site= Get-SPSite $siteURL&lt;br /&gt;$webs= $site.AllWebs&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; foreach ($web in $webs)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Write-Host $web.url&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; # Perform operation&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;catch&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; write-host -f Red &quot;error&quot; $_.exception&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $errorlabel = $true&lt;br /&gt;}&lt;/blockquote&gt;
And that&#39;s it, you can now loop through all SPWeb objects in your site.&lt;br /&gt;
&lt;br /&gt;
Happy scripting :-)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7147907521071721457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7147907521071721457'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2012/07/how-to-loop-through-all-spweb-object-in.html' title='How to loop through all SPWeb object in your SharePoint site using Powershell'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-116475150930222640</id><published>2012-07-03T10:39:00.000+02:00</published><updated>2012-07-03T10:39:29.158+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Publishing Pages"/><title type='text'>Programatically creating a SharePoint publishing page</title><content type='html'>Creating a new SharePoint publishing page is pretty simple, we just got a couple of things to remember.&lt;br /&gt;&lt;br /&gt;First check if the page already exists, if so you can edit that page. If it does not exist we need to pass a filename and a page layout which are pretty important.&lt;br /&gt;&lt;br /&gt;Once the page is created you can do pretty much anything with it.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static PublishingPage CreatePage(string filename, string title, string siteUrl, string pageLayout)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (SPSite s = new SPSite(siteUrl))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (SPWeb w = s.OpenWeb())&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PublishingWeb pWeb = PublishingWeb.GetPublishingWeb(w);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PageLayout[] ls = pWeb.GetAvailablePageLayouts();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var layout = ls.ToList().Find(x =&amp;gt; x.Title.Equals(pageLayout, StringComparison.InvariantCultureIgnoreCase));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (layout == null)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var p = pWeb.GetPublishingPages().ToList().Find(x =&amp;gt; x.Name.Equals(filename, StringComparison.InvariantCultureIgnoreCase));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (p == null)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p = pWeb.GetPublishingPages().Add(filename, layout);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return p;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.Title = title;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p.Update();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return p;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
And there you have it you have successfuly created a new SharePoint publishing page.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/116475150930222640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/116475150930222640'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2012/07/programatically-creating-sharepoint.html' title='Programatically creating a SharePoint publishing page'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-7817528871524654627</id><published>2012-06-11T22:28:00.003+02:00</published><updated>2012-06-11T22:50:39.227+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Serialization"/><title type='text'>How to serialize and deserialize any object to a compressed string</title><content type='html'>&lt;b&gt;How to&lt;/b&gt; : Serialize and Deserialize a object into a compressed string&lt;br /&gt;
&lt;br /&gt;
If you have ever needed to serialize some sort of object to a string for whatever reason we always trying to google some example of how to do it correctly. In the example below, I am going to serialize and compress a generic list to a string.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Serialization and Compression&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static string CompressValue(object serializedValue)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BinaryFormatter bf = new BinaryFormatter();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (MemoryStream ms = new MemoryStream())&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bf.Serialize(ms, serializedValue);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] inbyt = ms.ToArray();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (MemoryStream objStream = new MemoryStream())&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (DeflateStream objZS = new DeflateStream(objStream, CompressionMode.Compress))&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; objZS.Write(inbyt, 0, inbyt.Length);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; objZS.Flush();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; objZS.Close();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] b = objStream.ToArray();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(b);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch { return string.Empty; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/blockquote&gt;
&lt;br /&gt;
&lt;b&gt;Deserialize object&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private List&lt;object&gt; DeSerializeStringToObject(string serializedContent)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&lt;object&gt; retval = new List&lt;object&gt;();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytCook = Convert.FromBase64String(serializedContent);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (MemoryStream inMs = new MemoryStream(bytCook))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; inMs.Seek(0, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (DeflateStream zipStream = new DeflateStream(inMs, CompressionMode.Decompress, true))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] outByt = ReadFullStream(zipStream);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; zipStream.Flush();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; zipStream.Close();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (MemoryStream outMs = new MemoryStream(outByt))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outMs.Seek(0, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BinaryFormatter bf = new BinaryFormatter();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = (List&lt;object&gt;)bf.Deserialize(outMs, null);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return retval;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static byte[] ReadFullStream(Stream stream)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] buffer = new byte[32768];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using (MemoryStream ms = new MemoryStream())&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (true)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int read = stream.Read(buffer, 0, buffer.Length);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (read &amp;lt;= 0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ms.ToArray();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ms.Write(buffer, 0, read);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/blockquote&gt;
&lt;/object&gt;&lt;/object&gt;&lt;/object&gt;&lt;/object&gt;&lt;/blockquote&gt;
And that is it, you can now serialized any object into a string and deserialize into your object again.&lt;br /&gt;
&lt;br /&gt;
Happy coding guys...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7817528871524654627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7817528871524654627'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2012/06/how-to-serialize-and-deserialize-any.html' title='How to serialize and deserialize any object to a compressed string'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-2042953195192886952</id><published>2012-06-11T22:11:00.000+02:00</published><updated>2012-06-11T22:32:20.556+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Javascript"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><title type='text'>ASP.NET Update Panel not reloading jquery</title><content type='html'>&lt;b&gt;Issue&lt;/b&gt;: asp.net update panel not reloading custom jquery after a partial post back occurs. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Cause&lt;/b&gt;: The asp.net update panel reloads all the content within the content template tags, thus your custom jquery is not reloaded and never fired.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Solution&lt;/b&gt;: Add your custom jquery at the end of the request by using the page request manager object:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; var prm = Sys.WebForms.PageRequestManager.getInstance();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; prm.add_endRequest(function () {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DOSTUFF();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;/blockquote&gt;
&lt;br /&gt;
And problem solved, it&#39;s as easy as that.&lt;br /&gt;
&lt;br /&gt;
I hope this helped you, it solved my problem.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2042953195192886952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/2042953195192886952'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2012/06/aspnet-update-panel-not-reloading.html' title='ASP.NET Update Panel not reloading jquery'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-8493351628949008641</id><published>2011-11-09T11:56:00.001+02:00</published><updated>2011-11-09T11:56:30.884+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Silverlight Object Model"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Silverlight Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Silverlight Deployment"/><title type='text'>How to Deploy Silverlight XAP file to a Document Library</title><content type='html'>&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Okay, so you have developed your silverlight application in SharePoint and you now want to deploy it. So you take your XAP file add it your document library and then reference it from your Silverlight Web Part right? Seems kind of like a long process, if you also had to deploy a whole bunch of web part with.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;So we can make it simple by deploying our XAP with the rest of the web parts, lists, etc. All you need to do is follow a few simple steps and your XAP file will be deployed to your site with the rest of your customisations.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;b style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Step 1&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Add a new module to your solution&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAz4AAAGQCAIAAADgICI4AAAgAElEQVR4nO3dP2jbXMP3cY3PeI0d32xv4R2ewDPcgWep4R5q6BBDhxg6FNOhmA4X5h6CuZYiOhTToZgMxWQoOMMFzlBwhoKzBJyh4AwBZQjYQwYNGc6Q4QzXcN5BiatIOsc6suR/+X74UWzlWH+KJf8s/3MUYGlwPp4mzfjmYS/4t3nYa+73Kvs995OrlGwe9pSSD5le7t2P1EQpqU4rz/cqVuvsOE78qhMynR6fEr55mvEzb2Jeq/iap1xo4s2BDRbfm+L7wsw9KP1+pxtcEO9ylCbuR7f0opTyaIzNwLEe1myrW++wp5QKtbT7PFS3Xqy9ha9G/u0p1VOnlYpldUsUPwqvV/tZr7UFYIXqBh0O/bCW6axbtLcpJZv7iaXtoZ/FG1uoutmedUu0ptWNc2zAU0B1g47jfnTjsbg9jx9PT17VLXjZNFba5KwXTHteTmfdAGBlUd2gk1C8zNUtzbsE7NYg9paCxDFW01GobNVt+l4395Nb2e9Nz7oF04OJlf1e8F4346xye8EUAFYW1Q06dtWtiBeYDO/atrotFiaPs2690Fm3yMumqapbLi+YAsDKorpBJ4fqZvhET/hWuk/DJVY33Rx0HxRKubXIRa7vdYv2Nl4wBQBFdYOeE6FSv2A6vRr+U3zw9Ca68emnmEdiYayr2/7M97rFP5Sg/4wCL5gCeAKobtCxfq/b71tq6pQyvh8u3hQTz6UlLoXqtiIynnWbVNSkpyaVabzHV+9z+vCvJt5phRdMAWw8qht08q9uaabE56ObQnVbQRnOulX2e5W9XmW/Utl7uLxXCf376Orz3/9Wpv8+f7h8P/FfVDcAm4zqBp1lVjdd/aK6rTjb6gYAsEV1g47d97qleXEzPixSsAxzMI8xLMtuozEfqhsAFI3qBh1KD6xR3QCgaFQ36FDdYI3qBgBFo7pBh+oGa1Q3ACga1Q06VDdYo7oBQNGobtAptrqlvOdlTqErDx2qGwAUjeoGHaobrFHdAKBoVDfoUN1gjeoGAEWjukGH6gZrVDcAKBrVDTpUN1jLUN0aX70g9S9e7ZNX+WtU/s9o58No+91o681oay9LCt1GAFguqht0llDdpr+UYJgSTDTfiuq2LNmqW+dMdU5V51R1fqr2T9U+Ue0T1fqhWj+Ue6zcv5X7t2oeyeaRbHyXje+ycSjrh7L+Tda/yfqBrD0O1Q3AZqO6QWfR1S3S2BKnTIua4VZUtyUqsropqhsAKKob9Jb5gqmhuqW8XOjKQ4fqBgBFo7pBZ2nVLXyCjeq2XnivGwAUjeoGneVUt3nqGtVt6TJUt/b3/kioaYZBbtXwVg0e0r9Vff8+vSA3qnejukmpfnAL3UYAWC6qG3SW8zGFvGpcoSsPnXyq22326ubfysp7qhuATUZ1g84yP6ZAdVtTSz/r5vui8o7qBmCTUd2gs4TqFhaZGB9mmEJ1W5Zs1U3Jx5nD+EZU3jXnmQNmcpxiDw6rtlw8WSt7l6O6QYev5IW1HKrbXW+eFfAmfvmtdXULP2dQNsfrDEf26VISrxaxrPSLyLAahv+66eX4mMxrtbIPpVgd8Tth5rtN4g11d+A5l2WF6gYdqhuszVvd7nrqrjPPCnjX1tUtfqjdpOo2z80zzDNc12aOybBWVDfMlOPd3urgQHXDKqC6wdpc1S3obXfteVZgdOWX3zSsbpJ4dA43qvjV8L8pR0YWF/83fvPIlMzLilw2LMUwxjBD3dbphulWMnGLUi4XmIrfWxLvY2n2DsMOFZkekdvGaFDdoEN1g7U5qttDbxNzfchgeDEu79lVNzXreB0eNh0cH5n4gKErLvF/dWMM80+5LN1G6R7ADLdKU90SFzTz4TD9alDdMFO8sSnLO/PMm6QZXxyqG3Q4PsJa1uoW6m1irg8ZDH+NS/bVbUp3vJ75ZD0yzHAcjzeY+DP+xDaWbVmR2pRmc+Iz162Dbonx6ZH5J06ML9T24RMIRO45aXao6QXDbmV73y4O1Q06HB9hLWN1C/e22+zFSyk1OPdKr/OsbonNxvDX+Nx0Ew0FJd605lyW1ebMfHyauUTdHMzVzWo8YJBY3aaX09zz09/3nJgcN0SH6gYdjo+wlrW6hXrbnNXtzCu9rme+eV7VbWYdSb/QDGs1c1nm2c5ckzTzT1nFdA+uKTcB0MmwQ6XZrTI8YykC1Q06HB9hLWN1C/e2+apb/9TbsaxuiU+Xw1cjA+IPA/GR06uJi9NNiS8ozVpZLStxew1TZs7T8J8T2QrD4gwLNV8FdAx3xfB0850z/R6kG1wQqht08rkXZrs3m2/F4XtlZa1uod42X3Xr/Rzt7GY/6/bEpdmzlrv3se8DiuoGPetDZOLzlXmqm+628ekc0FdExuoW7m1zVreT0c4rqpsdwzk23fhC12fVlgusGqobdOyOkulr1jxz0/2VY/qKWHp16/4YUt0AbDaqG3TmrW66c2/xdxXoxhvef6B7g4LVOiN3y69ux8OdV7V55gAAK47qBp3sL5hOryp9dUucMs9tbdcWRVh6dev8Pdx+SXUDsMmobtDJXoZ0Z86U5kSauZBR3dbI8qvb0YDqBmCzUd2gU3h1S7yVYQ4pp2CJMle3wbk3OPcGZ97gzOufef1Tr3866v8c9X6Oeif36f4YdX8Muz+G3eNh93jY+TuUo0H7aND+Pmh/p7oB2HBUN+jkXN1mXqa6bYBs1a36wa2+dyvv3co7t/KuWXnbLAd50yi/aZT2HvK6UXpd39l9yKtpatsvH6XQbQSA5aK6Qcf6YwqG97qFp8RvEv/rzI8pxOfJxxRWQYbqBgCwQnWDzirWIMrZiqO6AUDRqG7QWaGSxHd/rAuqGwAUjeoGHXoSrFHdAKBoVDfoUN1gjeoGAEWjukGH6gZrVDcAKBrVDTpUN1ijugFA0ahu0KG6wRrVDQCKRnWDDtUN1qhuAFA0qht0FlfdEn8Ui59JWEdUNwAoGtUNOta/pjDzcprbZrg5VsdSqtvoatg77XiT0cKWCABLRHWDDtUN1hZf3frnvfZxs3Pitn+4nZPWYhYKAEtEdYNOztXN8Aun8YnxF0x1P3ia+BOoWJYFV7f+ebd93HSP6s3Dqvu93j5udn+2F7BcAFgiqht0rJtQvI2Zf1pe90P1ht+hNwymuq2CRVa3/lm39XezeVhrHFTu863qfm8UvVwAWC6qG3QKr27hKeaTdropicvCEi2suvXPuq2jRvOgWv9aCadxUB386he6aABYLqobdBZa3bINprqtmsVUt/5Zz/3eaHyt1j9X4hldDYtbNAAsHdUNOlmaUJoPK+jamOFPhsHxy1iiBVS3/nnPPaw3vlRrn8rxtP92C1ouAKwIqht08qxuSv85g/jlNJ9yMC8Ly5J7dRvfjMcTb3q1f95rHtTrnyu1j+VoPlV6p91cFgoAq4zqBh3KEKzlW906P9qNr7Xm11rnuKWU6p/1ml9r9U+V6n4pkvrnCt/rBuCJoLpBh+oGazlWt873du1jpbpfru6X6x8r9U+V+qdK7a9y9T+lSFbqRdI5TwAv6/wx562BuJXdL6hu0FnRuyxWWV7Vrf213f7a7h53qv8pVT7sVP7cqfxZqvxZqnzYCae6X+6f9+ZcZydkzlmp+T40o3uPgfkdn5ExmbdlZR+lACvmd0tnnlV4YuJetsgPzFHdoMNxHNbmr27jq5H7V7PzrTM8H44n4+5xp/KhVH6/E0nl/U7jS218482e4yz5vmlynjmY1yT+PlHDmAxrQnXDZshxjzbvYol/orphuTiOw9qc1a33tdl6s93+szI8H46vx+PJeHw9bn1rlt9uP8q77eZBXQiRyzqbv3pGJX3CJvFDM/EzZGlGGlYjcT1T1rvI1fgmpF8usF4MZ93iO2nkJoY9JX41PD0it43RoLpBh4M4rGWrbsOTbvdzw93bbr953t573t573v1UH1+Pg/bmXXuNj7XSm+0g5bfbtb8qOa5z/ICrO/jqjvgzy59hSuJV3dITu9rMR5r0q0F1w2aINzZlucfNvEma8cWhukGHgzisZahu3c+N+v8+a7563trdar/Zbr953nq91d573v/eHk/G3pU3noxHv4bVPyulve0gtf2KvMvnlJtK8c6YSLdbqeo2c80j65/+wQxYX7rqNvNJi2Fnj181LLFoVDfocBCHtQzVrf+9XfvXs+arLXdv29193trdar3ear/ear95PjjuBu3Nv/EHZ4Py252d1893Xj8vv93J8SvcbE9KLbG66f6k+6vhJlQ3bLDE6ja9bLsjRybGl5X47KhQVDforO5BPL5v8JCzIrK9YNrY3am/2Lrvbbtbrddb9xfebI/OB9Nzb92/u6XX2zu7z0uvt3s/N7m6xa8qzeNQmvnPPNNgmAKsqZn7WobqljjFMLg4VDfo2N0LM5yIjjxHSfOsxWp3wuJlq26j0379xbPmqy13mt379tZ+Xx79GgWfVxhfj1sHrZ1XzysfSnl9RkFp7oqGASnv3ilHRhZktdz0O5FuouEqsNYM+0t4unkPStwpdEeMRe5BVDfo5FndzI9Shse5mctKMx4Lk/kTpu3/1Gr/etb49311a73ecnfvL3f2a0FvG/0adQ479f3a6GoTfjhh1e7G7ETAuqC6QWf51U03xXCOYelPhp64eb4cpLG73Xi51Xy11d57Pj33FlzofmkOz4ftg7b7yfWucvgutyVKPAEW/uuC12e5ywWQAdUNOtaH8ni7Sjw1HR4cuWGaMbqZG+ZpuyHIbJ7qNjrt1/+95e5uNV9uNV9uubtbzVdbzZdbzVdbjZdb7n/q7id3fM0xCMBTR3WDTs7VLT4sZVFLM/P4PDnfthRzfiXv8KR7/7LpfYF71ny51fj3s/qLZ+7bsvD93FcYANYO1Q06hVe3xOm6MbZn3eLzxALM/0NY/e/t+ov7xhacfmv8+5n7pkRvA4AA1Q06WUqP7h1v8TFFVzfOui1FLj8/3z9s1f73Wf3Fs8aL+/NtMr/PkwLAuqO6QSfP6mZ+eVQ3Jj4xUsgSZ2teCgqVS3VTSvUO3Or//FF/sdX75ua1bgCwGahu0KH0wFpe1U0pNfzZ8ycccQAgiuoGHaobrOVY3QAAiahu0KG6wRrVDQCKRnWDDtUN1qhuAFA0qht0qG6wRnUDgKJR3aBDdYM1qhsAFI3qBh2qG6xR3QCgaFQ36FDdYI3qBgBFo7pBh+oGa1Q3ACga1Q06VDdYK6K6Od8cT3h5zQ0A1h3VDTrOzm6DEKvkW92CxkZ1A4Awqht0qG7EOtmqW+OrF6T+xat98lp/j4eXwvnmdH+N+r+E882p/ay3f/jVj97W3ihlitsxAGC5qG7QoboR62Srbs1vXu+X6v1SvXPVPVODSzX2lfPNGUy8+mnD+eY43xzvRvXOVfNINr7LxnfZOJT1Q1n/JuvfZP1A1h6H6gZgg1HdoEN1I9bJVt26P/3RRAUZXKnB1X11m/a2+mljeKU6p1Q3AKC6QYvqRqyTrboNrrzWRbt57jbP3eHNeDRR4dIWnHLr/1KtH1Q3AKC6QYvqRqyTobp1r7tBS5ume9EPLtR+1nmvGwBEUN2gQ3Uj1rGtbv6df9/STmv9Sb9yUnG+Oe3LduO84XxzlFLBheCy/EeJOyXu1ODc84XyhfJvlX+rxr7snYzGN3J8I70b6U1k9YNb7M4BAMtDdYPOoqubUmrpzYPMGdvq1r5sO9+c6s9acFX8I2qntaE/VEo535xpb2ucNdQ/Skol7pQQanDmhXrb7+oW9LbBuVd5T3UDsLGobtCZXd0iN5jzUV83h/nnTBYW2+rmXrjON6d53pxOEUKq0Mm2xlnD+eZ4t970lNt9dbtV/q3yfTX25diXvR/DoLd5Ezk48yrvqG4ANhbVDTppz7qpnKqVbj55zZ8sIJmrmxDSvxHiVoo7Ke7k/WcUzupCSOebM7oZjSf+8Jc3OPcGZ17/zOufjvo/R72fo97JqHcy7P4Ydo+H3eNh5+9h/8yrvGvOXjYArCeqG3R+V7fppMRH68j0yODw1cTp4Skz55C4MubVI4tMtuo2fcF0fOdvHW11rjrBWTfv9v7XFO5fLRVKCOXfqv7paPpS6diX4xvZ/TEMTrmNJrJ/Oiq/nau6OU7aX4FLP7IgjuMsYB2WtZlL/+/FE7ey90CqG3Qc9dC3pg/MKqke6QZEbh65YBhpmJ7mVmSJmedjCkN/WPpRcr453euuCn7/6tZT/ygh5P2rpQ8fTeifjvxQb/NuZPf4obpdy95Pu+rmhEynpL9tytmG/82wSjOXrhuZZszMlTGsW+L842PSbE6apQMzxe+Tme9FiTfU3Z/nXJYVqht0fle3sPijtUo6ATYdrOyrm24OuvknrhVZSub/cpA/Dv/wpVDByTalpFTetR98QGH60YT+z9H9KbfgU6WT++o2upaja9k7GZXfRO8qBvMc6NMUpjTTZ65S5rnN/0BiXpl43zWMybA+VDfYmv/piuHmM/dHqhuWK+GsW2KU8bScsqxuuum6+U+nz1xPsoBk+0re4fWo+ctt/nJ71z0hpH8r/FshhPR94V35g/Pfb3EbXY79W+HfSv9W+L4Qt1KI+/i+GF2OO0eD3o9ReS+f6hY/G6c7P5f4/Ds+RTdDwyqlWZ/4/A1j0myX4T9Ht10ztz3N5qRfLqCTco9OvI8Z7pPxq+HpEbltjAbVDTrLecHUMAfzyiSuG1lwMv6awrk3vTyeCPmPuo+8/xa36Uul4k51TlXrRLVO1PBKeTdy7MvwlNG17P4Yliyrm/l4rfQFJT49PlvzHBKXmHjV8ICU+5Q0KxnezMSJ5se/9KtBdYOteGNTlvftmTdJM744VDfo3Fe3nbk/ppB4Ibyk+ID4n3QrY143suBkq26dvwdKKfWPkv+o0eVYSiWlkncPX8Ab+hY3IVTrRLV/qspnuf3eG1wobyIjUwbnXul1zmfdDG1j5sFaV/IMT9N1XSfN+uQyJfFq+upmmL9hc8zjgfR01W3m0wPDLha/alhi0ahu0Cn2K3kVZWsTk626tb/31cOZttHFONzbIl/AK+V9ddv50w8yvpGRKVLK0uu6xR09xbk08xTz8do8z5mrZFjKilQ3w7aYq5vVeCC9xOo2vZxt14hfDc8w/jykUFQ36FDdiHUyV7fR5Xh0OR5djIdBfo2HD29xGzx8i1v/50gI6R6r5t+qfqiqX9X2e8+79iNTxjdiZ7HVTRnrRZrqlqYwFVfUUq5J4maa/wcM80/5X6GbM2A2816dobolTjEMLg7VDTr8himxTubqNn1z2/BiHD7l5ov7b3ELfqtU3KnGkap9U5XPsrw/fv5m6E1kdMqVv7NrV90iT5fDF8J/Sl96Zs4zMmzmKiWOT7k+8fWfOZ/IQg3rlrgO8fmn2Rzd4hRgz3DPDE8331cT736Jt9INLgjVDTpUN2KduaqbVFKq4a/xtLeFq1vwbSD+rXq+N9ja7W296m697Gy9bHsTGZ1y7e+8sqhuMFtueaK6AXFUN+hQ3Yh1slc3Oa1uXviUW/Atbn7w7bu+9IUa38j2Yb/xqeNNRNDnxJ3qHg/dr73eT8+/VeOJoLrla1n9id4GJKK6QYfqRqyT/b1u07e4/Xr8Frfwb5X+GI5vxPhGND93u8eD9mFwrk4KIdU/yrv2m5+74xvh3wqrjykAwHqhukGH6kasM9dZt7vf3+ImHj5S6t+q3s/R9IcTfKE6fw86fw/UP6p92O+fesF3vwVn7Dp/D3onQyFk78eguB0DAJaL6gYdXqqAtXmqm7iLfgFv8Ba33sl9dfNv1ejKb37pijsphBJCNj93xxMh7pQQUtwp/1Y2P3dHl+PxxC9sEwFgyahu0KG6wVrm6ibu1PDX+PdvXp16/VNv+lLp6MoPfhrLPegNf3m+L8Y3QtzJwS/P/dINXkWVUo5vROtbr3XQ831R3DYCwHJR3aBDdYO1zNWt+sGtvncr793KO7fyrll52ywHedMov2l4E//+165+KPdYlT+KwdkoMsW7jo4pbjMBYImobtChusFatuqWRvCTCe6xqn9XO3/6KacAwOahukGH6gZrxVW3yE8mpJwCAJuH6gYdqhusFVfdIj+ZkHIKAGweqht0qG6wVlx1i/xkQsopALB5qG7QobrBWnHVDQAQoLpBh+oGa1Q3ACga1Q06VDdYo7oBQNGobtChusEa1Q0AikZ1gw7VDdaKqG6e4Gs+AOA3qht0qG6wlnt1cw4dqhsAhFHdoEN1g7Ucq1vQ2KhuABBBdYMO1Q3W8qpu08bmHDqN80ZOawcAm4DqBh2qG6xlqG7NQ889GreOxu7huH7gtY7HwyvpHDrdi1HttO4cOs6h0z8X9YPx1t4oZQrdRgBYLqobdKhusJahunVP/dFEBRleqcGVGvvSOXTqp42gt9VPG8Mr1TlVzSPZPJKNI9k4vE/tQNYPZO1xqG4ANhvVDTpUN1jLUN0GV17rot08d5vn7tAfjyaqfl6fljbn0PF81b9QrRN139uOfve24F+qG4AnheoGHaobrNlWt+6kG7S0aXqT4bS3TU+/Tc+6hU+5cdYNwNNEdYMO1Q3WrKrbWI6DllY7rXUueuWTinPouOet4GTb8EryXjcAiKO6QYfqBmtW1a191Q56W3BVKFE7rQ39oXr4YGnQ24JPmEqphFRCquG55wvlC+X7yveVEKp7Mhz7cuxLz5feRFbfu4VuIwAsl/vRTRmq21NDdYM1q+rmXrjOodM8b06nCCmVUuHSFnxLiJxWNyH7p6HqJtTYl72TkffQ24YXXuUt1Q3Axiq9KFmF6vakUN1gLZfqFj7Zdl/d7nub8sXvs27Bmbbf1W0ivYnsn1LdAGwycetbher2pFDdYC1Ddaud1oSQQkhPjLeOttpX7eBk28gfCSGdQ0cI6U384bk3PPf6p0FGQXono97JqHsy7B4Pu8fDzvFweO6V3zZnLhoAZnKcVXwcpLrBYBXvslhxmT+mMPSHpZOSc+h0J10V+jUFIaVU9+9yC0629U9Hwaul07Nu3ZNhcMptNJH901HFsro5j2XbcKU5yucyZ93MAcSFd5bgcubdx2qnnnNZ6VHdYMBDBazN+eUgfxz+4UuhlHIOHaWUVMqb+DLU26bVbdrbxr7sHv+ubr3Tke1Zt7wOtbqjfO4LAmCQ404Xv7lhhlQ3rAIeZmAtw1fyDicj98J1L9z+pB+8121KPnyeNFzdeqejaWkTk664aourlrhoiQtXnDfGJ/XRUa1/2Gj+WU25Auaj8/Ry5Hl2/Jm34Yl44uXIYPPc4o8K6UcCT4rhrFt4Z0m/NyXOOTI9IreNSUJ1gwGHfljLUt3OveC9br4vxr4YT3xv4gf/Di8801vcjnriqi1FV17VxOkz/8gZf3nm7ZdH72utP+vp1zmxhIX/mmFK5E+RyzNvqxuQcjXobXji4o1NpdjLDHPQDTOPLwjVDQYc/WEtQ3XrHA2ml0dX4+B7QIJEv8Ut+CqQh7Nu4qotZU9OGvL8uTh2xgfPvP3S6H2tvluyWmdD5Yo/Fzc8ZdfNJ/5E3Dw38wCrFQOeJt1eo6triTuUorphDfEAAGsZqlv7qD+9HK5uwbeB/K5u4ve3uI196V154qotfVde7Ijj//IP//A+bY/+rDZ2t8u7Nat1TlndDLcyVzfdeMM6GAZYrRjwNBl2k5TPvtJXNycmxw1JRHWDAQ8AsDZPdZNSja7G4d4mHn2LW/DRBBV8i5u4akvRlldlcfKHf/hf4y/PR39WGrvbzU/tnV2LV0uV8f0rhsu21U0Za5zhEUK3uJSzAp4mw5OlzNUtcYphcEGobjDgAQDWslW30dX4Phfj4YU3fYvbw7vcHt7idjr9FreeuGpH3uLW2N1p7rudo0GG6pb4jDl+uA8PMLzaErlV4tXExUXmP3NxM0cCT1ZiD9PtdPH9zvx8LHGno7phFfAAAGvZqptUKsjwwpv+Vqm4/yqQyFk32T0Ziqt25C1ujd3t7kF7eCUzVDcAWCNUNxhQ3WBtruom1fDCE6FXS6fV7dG3uB127qvbVUVeVOVVXV7V5UVZnD4fHzxr/N+tnZdUNwAbi+oGA6obrGWvbvJ3dfNFuLqN/FBv83zZP6y777en6R+U/dOSOP5j/OVZ4/8+c99WqW4ANhjVDQZUN1jL+F4341vcEn+rtHM06Bx1hxc9cbolTp6Nvzzr/utZ82W5fTjYeWn3CVMAWCNUNxhQ3WAt41m3x9/iJsJfBRL67QTPl95Edo6HwW9ejU+a097W/9d/9T41h1eyddjfproB2FxUNxhQ3WAtc3UTkS/gffwtbtPeFlS30UQOL7zxcUOcl8Zfng1e3Pc2qhuAjUd1gwHVDdayVTchVew3r7zpt4Hcv1QafrX0eOifuuK85B9uD/a2Wnvl1mE/iHtAdQOwyahuMKC6wVq26lZ971bfu5Ugb5uVt81ykL1Gea9RCmVnt76zW6/sVcfHdf+kMtx7Vv/X852Xte3HKXQbAWCJqG4woLrBWobqloF/2hQnlfHuH8PDZnFLAYAVRHWDAdUN1hZT3cbHjcHe9vCgUdwiAGA1Ud1gQHWDtcVUN3obgCeL6gYDqhusLaa6AcCTRXWDAdUN1qhuAFAoqhsMqG6wpq1uok8IIWT+UN1gQHWDNaobIYQUGqobDKhusEZ1I4SQQkN1gwHVDdayVbf7H0v4/XsJgyDto0H7KPiNhN7SD5eEELIKobrBgOoGa5mrm3m27kG3/qm99CMmIYQsPVQ3GFDdYK246iaErP7ZWvpBkxBClhuqGwyobrCWrbp1jgfm2Ta/dL2JPzj3ym+bSz9uEkLIEkN1gwHVDdaKq26Dc697MmwfDXZ260s/dBJCyLJCdYMB1Q3WslW39tHM6tbZflkLZ+lHT0IIWUqobjCgusFa1urWD0Y1j8fTxKe0jwatw37zS5fqRgh5sqG6wYDqBmvZqlvr8Hd16wrVnqjakeEl47IAABlwSURBVK+Uko+nCKmEVN3TMdWNEPJkQ3WDAdUN1rJWt14wqnk8bk9U81zWjnz5UN2mU4RUQqjuCdWNEPJ0Q3WDAdUN1rJVN/egJ5VSSjWPx7UjP4hUSspHU3yhfKobIeRph+oGA6obrGWtbl0p7wcGjS2ImEYo/yGdE4/qRgh5sqG6wYDqBmvZqlvzS1dKJUO9TYTih3rb2Jfd1ahujuNYTSeErF1Wc3emusGA6gZrWatbJ2hs4c+TxktbkNzPujmOEz5AR67aHtNX81hPyNNJZHdWc+yViTd0QuKDF3AEoLrBgOoGa9mqW+NTRzxUt+nnSUOl7Xdv86huhBBj4tUtl1nNnCHVDauA6gZr2apb/VM7eG00/HnSyMm2oLd5vuwc51/dEv9VoafX4cHhiYbn94nPywkhRSflXpnY8CK7beJ5tcQlRhS6gVQ3GFDdYC1jddtvC3Ff3aqHvz9PGi5t7WOvfjAMp3s6VqKvm257oDcUuAxTcnzeTwixTbyxKWMP051dS1nddOMLCtUNBlQ3WMtW3Wr7LSEefYw0frKtfjDsChWkM1GtC1na95To66bbHuXNB/oM1W1hT8EJIZHoqpuursXPulHdsKaobrCWsbr92Ur8RIIXyrSidSaqdSWbp9HqFplue5RPPNAbjsvpz7oRQhacxOo2vZxtB49fDc9wkU/VqG4woLrBWrbqVn3vBp8/6Jx4nWOvc+y1wznyWkejoKJN+1n9WISrW3y67VHecNzPMIUXTAlZbgz7YObqljjFMLigUN1gQHWDtWzVrfK2uf2yZk79YBjuZ9VDf1rdEqdnO8RHpsSfRsefW+teYeHVUkKWmMQelnl3jsw5fivd4CJCdYMB1Q3WslW3NKkfDMP9rHLwu7olTieEkI0M1Q0GVDdYK666dU/HpX0vHPfYN0wnhJCNDNUNBlQ3WCuuuhFCCFFUNxhR3WCtuOo2//e3EULIBoTqBgOqG6wV+l63Ob+/jRBCNiBUNxhQ3WBtAdUt8/e3EULIBoTqBgOqG6wVXd3m+f42QgjZgFDdYEB1g7VCq9uc399GCCEbEKobDKhusLb473UjhJAnFaobDKhusLb473UjhJAnFaobDKhusMb3uhFCSKGhusGA6gZrVDdCCCk0VDcYUN1gjepGCCGFhuoGA6obrGmrGwAgD1Q3GFDdYI3qBgCForrBgOoGa1Q3ACgU1Q0GVDdYo7oBQKGobjCgusEa1Q0ACkV1gwHVDdaobgBQKKobDKhusEZ1A4BCUd1gQHWDNaobABSK6gYDqhusUd0AoFBUNxhQ3WAtc3VrHfZzSUHbBQArguoGA6obrM1T3dIMk5HIh3+lklLV99uZ1hoA1gbVDQZUN1hbaHWToQtSSamq791Maw0Aa4PqBgOqG6zNX92yvU4qpRJUNwBPANUNBlQ3WCv0rFv01dLQ+TbOugF4IqhuMKC6wVpB1W1maaO6Acid46zi4yDVDQareJfFisulusU/MfrotVGlZGSKVGLu6uaEpL+J7SLMy13NxwlgvYT3o+By5j1r5j4bH7yAvZjqBgMeRWAtr+oWvzBtbL8vSCXl7wvzvNct29E2l+o2zwoAiItXt1xmNXOGVDesAh5LYK2I6hZtbOpRY2sd9sV8L5jqDrWRJ9bxp9opr+oG6NYh8ZxB/LacqAMSGc66hfeaxJ0uvs/q5hyZHpHbxiShusGAhwRYy/0F08SXRxNfMM181i1ll0ozJf34mYvLtmgAKqmxKWMPi+9EM2+SZnxBqG4w4PEA1vL9mEKaTyeIacSSq1vkOXfm6hYfbz4PR3UDInTVzfwcST3esxTVDWuIxwNYW8RZt4cXTKcR831MIfezbmnmYF6HNNVNuz3Ak2feg9Lv0WmqmxOT44YkorrBgMcGWMv9vW6Gt7iF3+s2z1k3ZV+8zNVt/rNuGWYOIMywj2SubolTDIMLQnWDAY8HsJZjdUv4dELSB0tzqW4q6aMA8avhweEx2cZHlm6YkviEfmFP8YF1lNjDdDtRfC82tLHEW+kGF4HqBgMeEmCtkBdMZexjCpEXTIUKsjFfyZt4kgAAFNUNRjxawNqc1S3hcwnTn5lP+oDC73+pbgCeBqobDHi0gLVCqpu+vcmH3ibnfsEUANYC1Q0GVDdYm6e61ffb1ffunClouwBgRVDdYEB1g7XM1Q0AkAbVDQZUN1ijugFAoahuMKC6wRrVDQAKRXWDAdUN1qhuAFAoqhsMqG6wRnUDgEJR3WBAdYM1qhsAFIrqBgOqG6xR3QCgUFQ3GFDdYI3qBgCForrBgOoGa1Q3ACgU1Q0GVDdYo7oBQKGobjCgusEa1Q0ACkV1gwHVDdaobgBQKKobDKhusEZ1A4BCUd1gQHWDtQzVTdz05e1AyZG86cqbrrhypd9RcqjEUNwMC11bAFg7VDcYUN1gLUt1u26Jy4YSbXFRExc1/2RHXtaUaMmrprjubO2NMqTQbQSAJaK6wYDqBmtZXjC968kbV9115aQlJy3/oilv2uquI64b0u9lWAeqG4ANRnWDAdUN1rJUt9u2um0pOZBiIMVA3vbl3UDd9cV1w79qZ1gHqhuADUZ1gwHVDdayvGB6XhEXVXk3UNJT0lP/jJX05G3PPy/759UM60B1A7DBqG4woLrBGtUNAApFdYMB1Q3WslS3X1V5Wf9d3aSnpCdFX1xWxVUtPr73c5SY6YDqBzefjQGA1UN1gwHVDdayvNdNdB7e69aXoi/9nhQDJfvq1lWiEx/uHnQTMx1QeU91A7CxqG4woLrBWpbq5nfkpKXu2vKqLq/q/lnFv2xIv6NuXOl3Z988pvKO6gZgY1HdYEB1g7UM1U1et+V1W4m2vKjKi6p/sj0+r/qTjrrpyOu2PK+nibhwxcV9Y6u8axa2fQCwZFQ3GFDdYC3TC6aevPXa31r+zcC/GfjXPf+6L88qyu/Km466qIUjzmut/XI88mRHnuwE8yu/pbotjuMs50CxrOXiSVnNuxnVDQareJfFisv2G6ZSyvb3/qNJZyXldxPTO27FM391c0JSjs+wlMSFpllE5sXZbpftzA3LSlz/+JjMq7eaD6tYuvgdb57dJ3Fi4p12zmWlR3WDAYdFWFtAdUvI5HF1e9OwXe1l9Yb01S3z/OecQ/r5x5cVrmszxyT+Nf3SgalcnvPobj5zh6W6Ybk4LMLaSlS3PbvqpntiHb+ceLoo/qfEkYZFRJaVuIiZC0r5GDNzbvGRaeafZlmJwxLPW6RZMcNy8cQl3o2nV+P7lG6A0t8/40uMyG1jklDdYMAxEdYWUN3cL2484epWKqa6GQ7i5ocK3VJmjjGvw8xipNsuc1HLNv+Zy4pMNG9y+tWguiFR4m5odQeeeZM04wtCdYMBx0RYW4X3upVeF1Xd0hSIFaxuM880zDn/xK1Tsf+x+F9180w8gWH7UIqnTFfdZu7CkTse1Q1rh2MirK3CC6al13WrdU5Z3aaXrTqQoZbFC0pB1S3N+IKqm+5Pur8abkJ1Q3q63VAZd2HzlPjV8AzjTzaKQ3WDAcdEWFuF6rZjWd2U8ZRY/K95VTfzPM2znbka6eeQef4zH9V02z5z/uaVNC8UCGTYhWdWt8QphsEFobrBgGMirC3ivW6f3UjaX+uPqtuudXVTsRdK4lPiT6kTB0+v6i6Yryaug3mAbp66rUj8q2F8fIxhK3TL0s1NN3/dRMNVIMxw9wtPN98h0+xT4fkXtjWPUN1gwGER1nKsbrofTpj5XredV1mqGxKZH42WW56obniaqG4w4LAIa3medbMM1a0IM+vRsvoTvQ1PFtUNBhwZYS236jaHnVe1vGYFAKuG6gYDqhusrUJ1235JdQOwsahuMKC6wRrVDQAKRXWDAdUN1qhuAFAoqhsMqG6wlq26KaWobgCQBtUNBlQ3WJunulXeNstB3jTKbxqlvYe8bpRe13d2H/Jqmtr2y+QUtHUAsHRUNxhQ3WAtc3UDAKRBdYMB1Q3WqG4AUCiqGwyobrBGdQOAQlHdYEB1gzWqGwAUiuoGA6obrFHdAKBQVDcYUN1gjeoGAIWiusGA6gZrVDcAKBTVDQZUN1ijugFAoahuMKC6wRrVDQAKRXWDAdUN1jJUN3HTl7cDJUfypitvuuLKlX5HyaESQ3EzLHRtAWDtUN1gQHWDtSzV7bolLhtKtMVFTVzU/JMdeVlToiWvmuK6s7U3ypBCtxEAlojqBgOqG6xlecH0ridvXHXXlZOWnLT8i6a8aau7jrhuSL+XYR2obgA2GNUNBlQ3WMtS3W7b6ral5ECKgRQDeduXdwN11xfXDf+qnWEdqG4ANhjVDQZUN1jL8oLpeUVcVOXdQElPSU/9M1bSk7c9/7zsn1czrAPVDcAGo7rBgOoGa1Q3ACgU1Q0GVDdYy1LdflXlZf13dZOekp4UfXFZFVe1+Pjez1FipgOqH9x8NgYAVg/VDQZUN1jL8l430Xl4r1tfir70e1IMlOyrW1eJTny4e9BNzHRA5T3VDcDGorrBgOoGa1mqm9+Rk5a6a8ururyq+2cV/7Ih/Y66caXfnX3zmMo7qhuAjUV1gwHVDdYyVDd53ZbXbSXa8qIqL6r+yfb4vOpPOuqmI6/b4jJ1ru57XuVds7DtA4Alo7rBgOoGa5leMPXkrdf+1vJvBv7NwL/u+dd9eVZRflfedNR5ORx5Wu593olk8GV78GVbnuwE8yu/pbr95jjL2ZGXtVwgR6t5N6a6wWAV77JYcdl+w1RK2f7efzTp+Jm6qMUjzmqtv0qRdD/tdD/tzFndnJCU4zMsJXGhaRaRbXGRW0W2MXH+8TFW/y2GpQOLEb9jZ74rJt5Qt1PMuaz0qG4w4LALa3lVN/GrYZ2LVnDb8puG7Wovq5ekr26Z52+YW7iuzRyTYX2obliK+Z/zGG4+c4elumG5OOzCWm5n3eZQ3rOrbron1vHLiaej4n9KHGlYRGRZiYuYuaAMrSv+SDPzgcqwGumXCxTKcNYtcZ/SDVD6+398iRG5bUwSqhsMOObC2ipUt1Ix1c1wEDc/VOiWMnOMeR1mFq801S1xrWY+dKVfDaobliJxN7TaQWbeJM34glDdYMAxF9YWUN1mfiVv6XVR1S1NQVn36maYv3r8X5FY8tI/1AHF0VW3mbtw5I5NdcPa4ZgLawuobjO/krf0um61zimr2/RymvNMaWpZvAAtvrrp/qT7q+EmVDesDt1uqIy7sHlK/Gp4hvEnM8WhusGAYy6srcILpjuW1U0ZT4nF/5pXdTPP0zzbmasx86ph3WbOf+apC8MUYDEy7MIzq1viFMPgglDdYMAxF9ZWorrtWlc3FXuhJD4l/pQ6cfD0qu6C+WriOpgH6OaZuJTIFkVGzvxPiM8qzUYBi2e4e4enz9zrE+ecuBsu7A5PdYMBh11YW4X3uu28ylLdNtJyyxPVDSgC1Q0GHHZhbRXe60Z1C1tWf6K3AQWhusGAIy+srcQLpq9qec0KAFYN1Q0GVDdYW4Xqtv2S6gZgY1HdYEB1gzWqGwAUiuoGA6obrFHdAKBQVDcYUN1gLVt1U0pR3QAgDaobDKhusDZPdau8bZaDvGmU3zRKew953Si9ru/sPuTVNLXtl8kpaOsAYOmobjCgusFa5uoGAEiD6gYDqhusUd0AoFBUNxhQ3WCN6gYAhaK6wYDqBmtUNwAoFNUNBlQ3WKO6AUChqG4woLrBGtUNAApFdYMB1Q3WqG4AUCiqGwyobrBGdQOAQlHdYEB1gzWqGwAUiuoGA6obrGWobvJipK49de2piSd/9OSPnpp4ajJWk7G88gpdWwBYO1Q3GFDdYC1DdRNfXbFfF3/V1fe2/7Lkvyyp7y35sSE/NsW39tbeKEMK3UYAWCKqGwyobrCW5QXTHz3/xbb/72112PI/1PwPNfXN9V9s+y931HEvwzpQ3QBsMKobDKhusJapunXFu4r4UFU/uuKLK7646rgTTJHH3QzrQHUDsMGobjCgusFalve67dfl54b80lTnA3k5kpcjddaXX5ryc9P/2MiwDlQ3ABuM6gYDqhusUd0AoFBUNxhQ3WAty8cU3lSCjynI84GaeGriydO++NgQfzXEh2p8fO/nKDHTAdUPbj4bAwCrh+oGA6obrGV7r5vcr8uPdfWjKw7b4rCtTrpyvy7/qquk97q5B93ETAdU3lPdAGwsqhsMqG6wNtcnTL80c/mEaeUd1Q3AxqK6wYDqBmtZqtthx39XFe+r6qvrvy77r8vysCXeV8WfNXnUEZfttLm6P/FWedcsavMAYNmobjCgusFalo8p/OzL00HvoytP+/5H1//o+qd99XddnXXlz7Y6L4cjT8u9zzuRDL5sD75sy5OdYIblt4VUN8d50nvEsjb/if+3Y7lW8+5HdYPBKt5lseKy/YaplLL9vf9o0vEzdVGLR5zVWn+VIul+2ul+2slc3SJH5+Bq/JCd8iDuhGRYejbmxYX/lG1x8f+i8DYmzj8+xuq/xbB0wCx+h8x8F0q8oe7OPOey0qO6wYDDJazlVd3Er4Z1LlrBbctv7L5SJPH4O3NY5jHz3yRxJimrW+b5G+YWrmszx2RYH6obrMz/XMVw85k72gLurt7lKH1KL0pUtyeFwyWs5XbWbQ7lvRyqm+7sUXiKeT7xiYlzMM88PtKwiMiyEhcxc0EZWlf8EWvmf45hNdIvF0gUv+fodqj4TQx3yPjV8PSI3DYmiXeZ9qsr3Y8u1e2p4VgJa6tQ3Ur21S1+2NUd3A19wtyrEudgmGH8IUe3lJlj0mxFyu3SbWPiWs18CEy/GlQ3WEncfazu2DNvkmZ8QYLqluaUG9XtCeJYCWsLqG4zv5K39Dq3s26J3UL33Dp9dUtTUNa9uhnmr4z/mbYPmUCcrrrN3PUid0iqG9YOx0pYW0B1m/mVvKXXdat1tq1uKecTnxi5nOY8U5paFi9Ai69uuj/p/mq4CdUN89PtPsq4683c3w1PXeJPQopDdYMBx0pYW4UXTHcWVd3ix2jzlJn1JVt1M88z5VakrG7mbUxZxXQPqGkWAaSUYddL81Qtw7OX3FHdYMCxEtZWorrt5lbdVOwFlPAU3dx046dzjtzcMPNs1S1xPrrtis9n5sNVfIsiI2f+J8RnlWajgPQMd8vw9Jl7a+KcE3efhd1Rw9Wtuld1Hiv9u0R1e8o4XMLaKrzXbeeVXXXDTMstT1Q3IOzRWbeLYenfpWlv2/7v56NfQ6rbU8bhEtZW4b1uVLciLKs/0duAiMgLpqPzwfZ/P3ccZ+v/PBueDXjB9InjiAlrK/GC6ataXrMCgFUTf6/b8LS//T/b/R893usGqhusrUJ1235JdQOwsfiYAgyobrBGdQOAQlHdYEB1gzWqGwAUiuoGA6obrGWrbkopqhsApEF1gwHVDdbmqW6Vt81ykDeN8ptGae8hrxul1/Wd3Ye8mqa2/TI5BW0dACxd0MlShur21FDdYC1zdQMApFF6UbIKR+MnxQk/DBNCCCGEkFUO1Y0QQgghZG1CdSOEEEIIWZtQ3QghhBBC1iZUN0IIIYSQtQnVLVXSf0ibEEIISR/1+GP7hMwM1S1V3I+u7Ue1CSGEEHOCr95d+mMcWa9Q3VIlqG7L/iYXAMBGobqRDKG6pQrVDQCQO6obyRCqW6pQ3QAAuaO6kQyhuqVKLtXNcZJ/dkw3HQCw2ahuJEOobqkSqW6O44T7VuSqTrbqRrEDgE1FdSMZQnVLlWVVt5RzBgCsI6obyZD76uY8+P0Hh1b3O/Hqlviveihb8WI3nRj5k/m2irNuALC5qG4kQ5zB45Y2vUx1CydldTPUsplT4tPjlwEAm4TqRjLkvrqFLX2dVjCJ1S1+Yc7qFjk/F1kEAGDDUN1IhkTPupHELKa6Je7YVDcA2FRUN5IhvGCaKrrqFpnCC6YAgPSobiRD+JhCqqSsbirFxxTiU9LcNv8DBgBg2ahuJEPoZ6nCrykAAHJHdSMZQnVLFaobACB3VDeSIVS3VKG6AQByR3UjGUJ1SxX3o+tdjgghhJB8Q3UjtqG6pcqyn5gBADbW0h/jyHqF6kYIIYQQsjahuhFCCCGErE2oboQQQgghaxOqGyGEEELI2oTqRgghhBCyNnG2/l+JEEIIIYSsRahuhBBCCCFrE2frv8uEEEIIIWQt4mz9T5kQQgghhKxFnK3/qRBCCCGEkLWI8/xfFUIIIYQQshahuhFCCCFk/eJsuvgmBz96S3UjhBBCyPrFcRy1oUovSrrq5l2OqG6EEEIIWb8E1c27HG1Y3I8u1Y0QQgghmxaqGyGEEELI2oTqRgghhBCyNqG6EUIIIYSsTahuhBBCCCFrk6VUN8dxZk6huhFCCCGERFNcdQu+Vo3qRgghhBCSW6huhBBCCCFrk4Kq27SKhTtZ+EcOdFOoboQQQggh2iysukU6XOIUqhshhBBCiClUN0IIIYSQtUkR1S3+G/BUN0IIIYSQHFJQdYtfpboRQgghhMybhVU3j48pEEIIIYTMGX5NgRBCCCFkbUJ1I4QQQghZm1DdCCGEEELWJlQ3QgghhJC1SVDd3I/u5oXqRgghhJBNi+M4pRelTY2uurkfXaobIYQQQtYv8a/P3TDxTb5vdUv/ryeEEEIIISlDdSOEEEIIWZtQ3QghhBBC1iZUN0IIIYSQtQnVjRBCCCFkbUJ1I4QQQghZm+T8c/eEEEIIIaS4UN0IIYQQQtYm/x90k+vHvFee3gAAAABJRU5ErkJggg==&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Step 2&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Right Click on the module you have just added and select properties.&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Look for &quot;Project Output References&quot; click on the elipsis and click add.&lt;/div&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Set the deployment type to a &quot;ElementFile&quot; and select your project name&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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AErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKMHToA08DQCgBE+DNvA0AIASPA3awNMAAErwNGgDTwMAKEnK09pPsqQnYuJpAIBAEvG07o2CXkK7j/E0AKSZRDxNSB8ETwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGsDThHgHTwNAGuB+ZMkydXKK/ROA5/5JSfA0AKSBpDyt/SSbhsj/j4T9E3X/pCR4GgDSAJ5O9kSPp2Psn5QETwNAGsDTyZ7o8XSM/ZOS4GkASAN4OtkTPZ6OsX9SEjwNAGkATyd7osfTMfZPSoKnASAN4OlkT/R4Osb+SUnwNACkgT73tBDOPrvnJHqix9Mx9k9KgqcBIA30g6eFEH727XtPCxvd3OeJ7p+UBE8DQBrA08me6LvgaS2bluj+SUnwNACkgZ73tCUnh7Eco0wt406NnvbbfMP1tsZd03PfJrHr8DQAgJI+9LTbNLoGnbo8HbAHHBNh9lVyew9PAwAowdPJnui1XJ8W6wnYSwGa9/woAk8DAHSZ3va0cGFsPE+7t8u9jW16usv7JyXB0wCQBnre0+4/N6anjUBnR/J0yOnk9k9KgqcBIA30oaeNjfo9Ms894J4fXNOv2SR2HZ4GAFDS255OebjPSbz9k5LgaQBIA3g62RM9no6xf1ISPA0AaQBPJ3uix9Mx9k9KgqcBIA3g6WRP9Hg6xv5JSfA0AKQBPJ3siR5Px9g/KQmeBoA0kJSn5y7PkQBPa+9YSoKnAQCCmUvC01Mnp4gV9k/U/ZOS4GkASAOJeJqQPgieBoA0gKcJ8Q6eBoA0gKcJ8Y72i/eEECIT/sSFpwkhhJD0Bk8TQggh6Q2eJoQQQtIbPE0IIYSkN3iaEEIISW/wNCGEEJLe4GlCCCEkvcHThBBCSHqDpwkhhJD0Bk8TQki6IjYM7m3XfUPPLhHp/yvC04QQkq4IIXR7JHGmTk75eVr7/k86cxH//188TQgh6Yr0tPZuJBcpKjwdMniaEELSFTzd38HThBDS28HT/R08TQghvR083d/B04QQ0tvB0/0dPE0IIb0dPJ3OeHY49uZHWK/2LSeEEGJPFzzt/gWz33QS6YKng3+lHbvNDm5+hPUm+mQQQgiJmqQ97alk90RySdrTCW0CniaEEFIzEva0WzZyjr1MOol62m8THMNrzwG3X53gluNtfoQt6sJTQgghJHx0ebo7kjY0edq9vQFzwlRoc/MjbFF3nhVCCCEhg6c7u4HWfPv4OIynAxZpf/MjbFF3nhVCCCEhw+fend1AQ2Vl5Xg6oOXYmx9hi7rwlBBCCAkfvkfWwQ3022Q+9yaEEBIzSXva2JC/y1J+7u3eLe4/O7j5EbYl0SeDEEJI1HTB03rTo/c56ezmh6+PpwkhJF3B0/0dPE0IIb0dPN3fwdOEENLbwdP9HTxNCCG9HenpuctzfRw8raxm7Qo8TQgh6YoQYurkVN/Hz9Pa30N0521K8DFgmubMuZm140H7EUkIIcQesWFwb7v2dw9dS8ABICWNpwkhhJDUxSFpA08TQgghKYld0lyfJoQQQlIUh6T53JsQQghJS9ySxtOEEEJIKhIgaQNPE0IIIRrjJ2muTxNCCCGaEyBpPvcmhBBCdCZY0niaEEII0ZaQkjbwNCGEENLlhJe0gacJIYSQ7iekpI27tf8PSSLljoDZmTMAAAAASUVORK5CYII=&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Click ok and you should notice your Elements.xml has been modified to something like the following:&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt; &lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;You can now proceed to change it to look like the below:&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Happy coding guys I hope this helps make your deployment alot simpler. &lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/8493351628949008641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/8493351628949008641'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/11/how-to-deploy-silverlight-xap-file-to.html' title='How to Deploy Silverlight XAP file to a Document Library'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-3902335665211634548</id><published>2011-11-09T11:15:00.001+02:00</published><updated>2011-11-09T11:18:40.177+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Silverlight Object Model"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Silverlight Development"/><title type='text'>Inserting SharePoint List item using Silverlight Object Model</title><content type='html'>&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;If you finally came over to the dark side and embraced Silverlight in SharePoint you should familarize yourself with the Client API for Silverlight, I have mentioned in a previous &lt;a href=&quot;http://markanthonyparker.blogspot.com/2011/11/getting-started-with-sharepoint-2010.html&quot; target=&quot;_blank&quot;&gt;post &lt;/a&gt;how to reference these assemblies.&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;If you want to be more adventourous and insert list items using the Client API you can use the following code:&lt;/div&gt;&lt;blockquote class=&quot;tr_bq&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;ClientContext context = ClientContext.Current;&lt;br /&gt;
&lt;br /&gt;
List oList = context.Web.Lists.GetByTitle(&quot;HelloWorldList&quot;);&lt;br /&gt;
&lt;br /&gt;
ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();&lt;br /&gt;
ListItem oListItem = oList.AddItem(itemCreateInfo);&lt;br /&gt;
oListItem[&quot;Title&quot;] = &quot;Hello World&quot;;&lt;br /&gt;
oListItem.Update();&lt;br /&gt;
&lt;br /&gt;
context.Load(oList, list =&amp;gt; list.Title);&lt;br /&gt;
context.ExecuteQueryAsync(OnSuccess, OnFailed);&lt;/blockquote&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;The above method is done assyncrously so you will have a call back which means if the insert is success code sample A if it is unsuccessful run code sample B, see below:&lt;/div&gt;&lt;blockquote class=&quot;tr_bq&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;private void onSuccess(object sender, ClientRequestSucceededEventArgs args)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp; Deployment.Current.Dispatcher.BeginInvoke(() =&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;successfull&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp; });&lt;br /&gt;
}&lt;/blockquote&gt;&lt;blockquote class=&quot;tr_bq&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&amp;nbsp;private void onFailed(object sender, ClientRequestFailedEventArgsargs)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp; Deployment.Current.Dispatcher.BeginInvoke(() =&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;Failed&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp; });&lt;br /&gt;
}&lt;/blockquote&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;As you know these operations are done assyncronously so simply put we have to get the attention of the UI thread to perform our success or failure action.&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;/div&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt; Happy coding :-)&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3902335665211634548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3902335665211634548'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/11/inserting-sharepoint-list-item-using.html' title='Inserting SharePoint List item using Silverlight Object Model'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-7634498334069107871</id><published>2011-11-09T10:52:00.001+02:00</published><updated>2011-11-09T10:54:46.992+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010 Silverlight Object Model"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Silverlight Development"/><title type='text'>Getting started with SharePoint 2010 Silverlight Client Object Model</title><content type='html'>&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Getting started with SharePoint 2010 Silverlight Client Object Model -&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;When you want to use the Silverlight Object Model the first thing we are going to is add a reference to silverlight assemblies:&lt;/div&gt;&lt;ul style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Microsoft.SharePoint.Client.Silverlight.dll&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Microsoft.SharePoint.Client.Silverlight.Runtime.dll&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;These assemblies can be found at the following location :&lt;/span&gt;&lt;/div&gt;&lt;ul style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b&gt;C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\ClientBin&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif; font-size: small;&quot;&gt;Then in your code just reference the assembly and you should be good to go as shown below:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;using Microsoft.SharePoint.Client;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;ul style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;/ul&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif; font-size: small;&quot;&gt;So happy coding guys, hope you enjoy the Silverlight Client Object Model&lt;/span&gt;&lt;b&gt; &lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7634498334069107871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7634498334069107871'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/11/getting-started-with-sharepoint-2010.html' title='Getting started with SharePoint 2010 Silverlight Client Object Model'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-4574626859248754317</id><published>2011-10-07T15:07:00.001+02:00</published><updated>2011-11-09T11:23:22.552+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><title type='text'>Create custom list using Content Type and Schema.xml file</title><content type='html'>&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Creating a schema for a custom SharePoint list has always been something I think which could be much improved upon, as it is always something that may cause you to pull out your own teeth.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;In my experience the easiest way to do this is to replace the&amp;nbsp; ContentType tags with the following:&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Then it&#39;s as simple as adding your fields within the field tags of your schema.xml file, see below:&lt;/div&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;You can always use the GUID generator that comes with Visual Studio to generate new GUID&#39;s for your different fields.&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Once complete, if you wish for your fields to be displayed in your view, add them to your ViewFields tags, (ViewFields tags can be found within the Views, View tag of your schema.xml file) as shown below:&lt;/div&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;You have now successfully created a working schema.xml file, hope this helps in stopping you from tearing your hair out.&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4574626859248754317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/4574626859248754317'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/10/create-custom-list-using-content-type.html' title='Create custom list using Content Type and Schema.xml file'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-7163345102463276757</id><published>2011-10-07T14:50:00.000+02:00</published><updated>2011-10-07T14:50:55.482+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Silverlight Development"/><title type='text'>How to access Init Parameters for SharePoint Silverlight Web Part</title><content type='html'>Custom initialisation parameters are accessible from within the silverlight web part, these values, are values passed from the Sharepoint Silverlight web part into the Silverlight application.&lt;br /&gt;
&lt;br /&gt;
These values are passed in the form of a Dictionairy object and they are passed as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Key=Value,Key1=Value2 &lt;/blockquote&gt;These values can be accessed by using the following code:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;private void Application_Startup(object sender, StartupEventArgs e)&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;string value = e.InitParams[&quot;Key&quot;];&lt;br /&gt;
}&lt;/blockquote&gt;Please let me know if this post has helped you, and if you have any improvements or comments please feel free to post them.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7163345102463276757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/7163345102463276757'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/10/how-to-access-init-parameters-for.html' title='How to access Init Parameters for SharePoint Silverlight Web Part'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-3367447340220983516</id><published>2011-10-04T10:01:00.003+02:00</published><updated>2011-10-07T15:11:37.112+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint and WebServices"/><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="WCF Service"/><title type='text'>WCF Annonymous access is required for the IIS application that host this service.</title><content type='html'>When developing WCF web services for SharePoint you may sometimes run into the following problem.&lt;br /&gt;
&lt;br /&gt;
Security settings for this service require &#39;Anonymous&#39; Authentication but it is not enabled for the IIS application that hosts this service. &lt;br /&gt;
&lt;br /&gt;
Trust me, you will knock your head trying to solve this one. The solution is pretty simple though. In your web.config file modify your the bindings section with the following:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjatQaymaxy_Ln_h_EM9P6KZNrsteNDx4vyaEKIHc7qemVVEiLV_M0L84OAeEWvbiBzdhFqq2Ez_U8RLNUZ-ouKCoZ0heCpwzHuduL2GySf9tDx_gBQ3PuuAeFMvg4RI55WXDWEs67PQ_0/s1600/BindingsBlog.JPG&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;107&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjatQaymaxy_Ln_h_EM9P6KZNrsteNDx4vyaEKIHc7qemVVEiLV_M0L84OAeEWvbiBzdhFqq2Ez_U8RLNUZ-ouKCoZ0heCpwzHuduL2GySf9tDx_gBQ3PuuAeFMvg4RI55WXDWEs67PQ_0/s320/BindingsBlog.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you SharePoint application is using Kerberos authentication please change the mode to Windows.&lt;br /&gt;
&lt;br /&gt;
This solution worked for me, hope that it will work for you.&lt;br /&gt;
&lt;br /&gt;
Till next</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3367447340220983516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/3367447340220983516'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/10/wcf-annonymous-access-is-required-for.html' title='WCF Annonymous access is required for the IIS application that host this service.'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjatQaymaxy_Ln_h_EM9P6KZNrsteNDx4vyaEKIHc7qemVVEiLV_M0L84OAeEWvbiBzdhFqq2Ez_U8RLNUZ-ouKCoZ0heCpwzHuduL2GySf9tDx_gBQ3PuuAeFMvg4RI55WXDWEs67PQ_0/s72-c/BindingsBlog.JPG" height="72" width="72"/></entry><entry><id>tag:blogger.com,1999:blog-2425335818368184627.post-5958556207219179137</id><published>2011-10-04T09:52:00.002+02:00</published><updated>2011-10-04T09:53:58.514+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Sharepoint Custom Development"/><category scheme="http://www.blogger.com/atom/ns#" term="Silverlight"/><title type='text'>Debuging Silverlight WebPart in SharePoint 2010</title><content type='html'>Debuging a silverlight web created and used in SharePoint 2010 can sometimes make you want to pull your hair out. I literally knocked my head against the wall a few times trying to get debugging to work. It&#39;s pretty simple though, all you need to do is select your project properties, click the sharepoint tab, and enable silverlight debugger.&lt;br /&gt;
&lt;br /&gt;
For more information please refer to &lt;a href=&quot;http://vangalvenkat.blogspot.com/2011/03/how-to-debug-silverlight-webpart-in.html&quot;&gt;http://vangalvenkat.blogspot.com/2011/03/how-to-debug-silverlight-webpart-in.html&lt;/a&gt; it is a great resource and helped me to debug my silverlight application.&lt;br /&gt;
&lt;br /&gt;
Until next time, hope this post has helped you as it certainly helped me.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/5958556207219179137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2425335818368184627/posts/default/5958556207219179137'/><link rel='alternate' type='text/html' href='http://markanthonyparker.blogspot.com/2011/10/debuging-silverlight-webpart-in.html' title='Debuging Silverlight WebPart in SharePoint 2010'/><author><name>markanthonyparker</name><uri>http://www.blogger.com/profile/01951614316633775293</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author></entry></feed>