Microsoft

Blog Categories

Subscribe to RSS feed

Archives

Follow Microsoft Technologies on Pinterest

Archive for the ‘.NET’ Category

Working with dynamic schema in Azure DocumentDB

dynamicAbout a week ago Azure DocumentDB, a new Microsoft’s entry into NoSql database market, become generally available. DocumentDB allows user to to store/update/delete arbitrary objects (as complex as needed, not limited by relation structure) and query these objects using a special (quite limited) flavor of SQL (yes, SQL!) or LINQ when it’s used from .NET. Although these kinds of databases are called NoSql, they should rather be called object databases, or non-relational, because, well, you can still use SQL to query them.

So, these objects that you can story in DocumentDB, they could be really anything. However, in order to effectively use DocumentDB .NET client library, you need to know the object schema in advance. For example, let’s say you have the following class:

public class Person
{
  public string FirstName { get; set; }
  public string LastName { get; set; }
}

And then you instantiating the object of this class and storing it to DocumentDB (assuming that you already created database, document connection and client): Read the rest of this post »

BUILD & IGNITE Know It. Prove It. Tech Challenge Tour

KiPiTour

I recently blogged about my personal experiences with the first “Know it. Prove it.” challenge that ran through the month of February 2015. The “Know it. Prove it.” challenge is back! This time it’s bigger and better than ever. The new challenge is a companion to both the Build and Ignite Conferences with 11 amazing tracks for both Developers and IT Professionals. Also, just like the first round, this set of challenges are completely Free!

Join the tour and accept a challenge today.

Whether you’re looking to learn something new or just brush up on something you’re already using, there’s definitely a challenge track for you.

Read the rest of this post »

Creating Microsoft FIM Management Agent: lessons learned

extensibilityMicrosoft FIM (Frontend Identity Manager) is a popular enterprise product which is allowing to automate user creation, provisioning and de-provisioning in Microsoft Active Directory. FIM has many out-of-the-box extension connectors which allows for connecting FIM to external systems (like external user catalogs), including a set of web services. When out-of-the-box connectors are not sufficient, it’s possible to implement a custom Management Agent (MA) for FIM using .NET framework.

I recently helped to connect FIM to external system which had MySQL user database. There is no out-of-the-box FIM connector for MySQL, we had to implement our own custom management agent. While working on this task I found out that the process of creating FIM MAs is very scarcely documented. This reference and that example is pretty my the only source of information about creating Extensible Connectivity Management Agents (ECMA). The problem though is that the reference doesn’t provide a complete documentation for creating ECMAs and the code example, while providing a complete code listing for management agent, doesn’t cover all everything. In fact, the code sample represents one specific, quite simple case of ECMA 2.2 agents, and there are a couple of places in this example which require additional explanation.

Read the rest of this post »

Perficient is named a Sitecore Platinum Implementation Partner

Stephen Tynes

Stephen Tynes, Sitecore MVP, recently joined Perficient

Today, Perficient announced that we are now a Sitecore Platinum Implementation Partner.

Sitecore established the new designation to recognize  partners who distinguish themselves through their implementation capability, joint reference clients with Sitecore, and demonstrated thought leadership in customer experience management.

It’s been an exciting couple of months for Perficient’s Sitecore practice. In addition to being named a Platinum Implementation Partner for Sitecore, we recently welcomed Stephen Tynes to the Perficient team. Stephen has a deep background in the Microsoft stack and brings a wealth of experience covering all facets of the Sitecore platform across both sales and delivery. He is a graduate of Liberty University and spent the last 11 years with Avanade.

From the news release:

“We’re grateful to be recognized for the work we’ve done for our customers on the Sitecore platform,” said Stephen Tynes, Perficient’s Sitecore Practice Director and a Sitecore MVP. “Our team of digital strategists, experience designers, and technologists is second to none, and Sitecore’s recognition of Perficient as one of their Platinum Implementation Partners is just another indication of that. With Sitecore and Perficient, you truly can create customers for life.”

Sitecore’s experience platform combines web content management, marketing automation, email marketing, social media, e-commerce, optimization, and analytics into a single, unified platform. The platform captures every interaction that customers and prospects have with a brand, whether on a website or through other digital channels.

“Our congratulations go out to Perficient,” said Dominic Citino, vice president of global partnerships and alliances at Sitecore. “This new designation as a Platinum Implementation Partner illustrates how Perficient can complete Sitecore’s vision for customer experience management and deliver these projects at scale.

“Perficient has demonstrated an extensive understanding of the entire Sitecore offering, has deep Sitecore experience and is committed to creating happy Sitecore customers,” Citino said.

You can read the full news release here.

Azure Search: Scoring Profiles

Introduction

When a search query is submitted to the index, each document that is returned has a search scoreazuresearch_configure1_5_searchtile which is an indicator of its relevance in the current search query and context. The higher the score, the more relevant the item and therefore, the higher it is ranked on a scale of high to low.

In Azure Search, you can tweak the calculation of a search score through an index modification called a scoring profile. A common usage of scoring profiles is Geo-search, which allows you to automatically boost items which are closer to the location of the user. You can also simply boost by pushing newer documents to the top of your search results, or in some cases boost some older documents. It all depends on what your business needs are.

You can configure as many scoring profiles as you would like in your search index, but you can only specify one profile at a time when running a query.

Scoring Profiles vs. Managed Property Weighting and XRANK

For the SharePoint Devs out there getting into Azure Search, Scoring Profiles is a lot like Managed Property Weighting combined with XRANK in SharePoint. However, I find that Azure Search gives you control that allows you too really customize your boosting in ways that SharePoint cannot. Most of your boosting control comes in how you define your scoring profiles in your index, which allows you to really clean up your query on the front end without having to use XRANK. For example, to achieve a simple Geo-search, you would only need to provide the scoring profile and the current location as parameters in your search query.

As a further bonus, you can configure as many different scoring profiles as you would like, giving you full control of how your query gets processed. While in SharePoint, you can only configure a single set of relevancy rules without using XRANK, in Azure Search you can configure as many as you would like and specify which one you would like to use at the time. This way you can specify different weights for different fields (managed properties) when your business needs change without having to completely clobber the back-end index.  Read the rest of this post »

Four Microsoft Platforms and Products for Digital Transformation

When we talk about Digital Transformation, the first thing most people tend to think about is digital marketing—and that means consumer-facing technology. Your public website, how it’s delivered to various form factors, how you integrate an app strategy for B2C commerce or the engine driving your B2B transactions, how you track consumers’ interaction with you and interact with them, serving recommendations based on that tracking data… it’s all about the outside.

A lot of readers will ask why we’d talk about these topics on a Microsoft blog. It’s a darn good question—after all, Microsoft’s focus these past few years has, as ever, been firmly behind the proverbial firewall. Productivity and (and in) the enterprise is Microsoft’s sweet spot—not consumers—and that assessment remains true. Sort of. In point of fact, Microsoft technologies do a lot of heavy lifting in that space, even if Microsoft’s products there are less obvious.

Meanwhile, Digital Transformation taken as a whole is about more than just outreach and interaction. It’s about embracing new ways of working—working social, working mobile, powered by the cloud and not inhibited by archaic notions of a firewall—that’s how you enable your own users to move faster, work smarter, and just be more effective versions of themselves. And Microsoft is all about that. Let’s take a quick look at four key planks in the Microsoft stack that have a lot to say about how Redmond gets involved in the Digital Transformation conversation.

Azure

It all begins from the ground up, with the baseline infrastructure. Azure is Microsoft’s infrastructure in the cloud, allowing you to build server farms, develop and host business applications, and even migrate entire datacenters into a highly-available infrastructure living within Microsoft’s cloud. Whether you want to enable mobility and a broader reach, become more flexible and scalable in how you respond to business needs, or simply operationalize your hardware expenses, getting your servers out from behind your own firewall and into the Microsoft cloud is a good start.

Office 365 and Yammer

Enabling your own users to work faster and more effectively, communicating and collaborating across boundaries on devices as diverse as old Windows PCs and the latest version of iOS? That’s a concept at the core of Digital Transformation, and that’s what Office 365 and Yammer are all about.

Dynamics CRM

I read somewhere that another CRM-focused software company has “defined the customer journey”. I’d like to call shenanigans on that. Software doesn’t define anything; it supports and enables it. Dynamics CRM—integrated as it is with Yammer and Office 365, and far less expensive to license than its primary competition—can do a surprisingly thorough job of supporting and enabling how you interact with your customers. If you haven’t given it a hard look before, you might want to think about it now.

Sitecore

It’s not a Microsoft product, but Sitecore’s CMS, DMS and Customer Experience Platform are built on the .NET Framework, run on Microsoft infrastructure and are produced by last year’s Microsoft ISV Partner of the Year, so they’re about as close as you get without being shipped from Redmond. I’ve avoided writing about this in other outlets lately because third-party publishers always ask me to be objective, but the bottom line is, there’s not much point to doing a public-facing website on Microsoft’s platform with the likes of Ektron or Umbraco when Sitecore is available. Their many integrations—including with Dynamics AX, Microsoft’s ERP platform—and incredibly rich platform for digital marketing and customer experience (which enables things like email marketing, persona development and personalized content, and more) make them a no-brainer in reaching consumers in the digital age.

These four pillars are just the foundation of how Microsoft contributes to what we’re calling Digital Transformation. As ever, what you can build with .NET and Windows is only limited by your imagination—but now, both for your own internal users and your external consumers—they’ve got the goods to really go digital. If you should decide you want to move into that space with confidence, check out my colleague Michael Porter’s webinar on Wednesday, February 11.

Anglebrackets Conference – Day 4

Keynote – ASP.NET vNext and you
Speaker: Scott Hanselman

ASP.NET will run anywhere (Mac and Linux). Web server will be included.

New free SKU of Visual Studio. Community edition will replace Express.

image_dbbecd7b-9298-4dde-993a-acd9d9461515ASP.NET and modern web

  • Totally modular (dependency injection built in)
  • Faster development cycle
  • Seamless transition from on-premises to cloud
  • Choose your editors and tools
  • Open source with contribution
  • Cross-platform
  • FAST

Framework (CoreCLR) is packaged together with application, not shared, safe to deploy.

Split between .NET Framework (Full CLR) and .NET Core (Core CLR). Core CLR is open sourced and cross-platform.

Project file (project.json) is replacing both web.config and nuget package file).

It’s possible to reference ASP.NET is source form and debug it.

VS supports Bower (client-side package manager) and Grunt (client side build tool).

Read the rest of this post »

Anglebrackets Conference – Day 3

I have been fortunate to attend this year’s Anglebrackets conference in Las Vegas. (See my coverage of Day 1 here and Day 2 here.)

The following are my notes from the Day 3 keynote, “Conversations with Microsoft.”

image_dbbecd7b-9298-4dde-993a-acd9d9461515The speaker: Steve Guggenheimer, corporate VP and chief evangelist.

A lot of changes at Microsoft over last year. New CEO, Satya Nadella

Not changed: We always be partner-led

Our Core – productivity platform for mobile-first, cloud-first world

4 engineering units at MS

  1. Devices platform.

Converging Xbox, Windows , WP and RT into single platform. Universal apps and One Windows.

VS 2015 preview is out. Demo: creating universal app from template.

  1. First-party devices (Surface, Lumia phones, Band, etc).
  2. First-party services (Office 365, Bing, Yammer, Skype, et). Cross-platform APIs and SDKs.
  3. Azure 

Microsoft Developer approach:

  • Innovation
  • Agility
  • Openness

Demo: VS2015 – targeting multiple devices with Apache Cordova plugin for VS. Using Android emulator for VS.

Demo: using remote IE (Azure service for testing on IE) on Mac, iPad and Android tablet.

http://remote.modern.ie

Announcement: Open sourcing .NET Core Runtime and Framework. .NET running on Linux and Mac. Free VS 2013 Community edition.

Read the rest of this post »

.NET 2015 is coming! And then some

Yesterday in New York at Microsoft’s Connect(), a virtual event for developers focused on current and future technologies, Microsoft did what a lot of us in the developer community have been waiting for and  [finally] announced that the next .NET release is coming!

But wait, as the late night TV pitchman says, there’s more. There was an announcement from Microsoft Corporate VP of the Developer Division, Soma Somasegar and Miguel de Icaza of the Mono Project that the “open sourcing the full server-side .NET Core stack, from ASP.NET 5 down to the Core Runtime and Framework”. Visual Studio will be opened to all developers including those developing on Linux and OS X platforms with Visual Studio Community 2013,  a new, free and fully featured edition of Visual Studio. Both the open source .NET project and Visual Studio Community are available for download today.

Just think, it’s now possible to write apps that have a Windows UI, but run on a Mac natively .  >)  (Yes, that is an evil smiley).

Here  is the announcement on  Soma Somasegar’s blog.

 

Anglebrackets Conference – Day 2

I have been fortunate to attend this year’s Anglebrackets conference in Las Vegas. (See my coverage of Day 1 here.)

The following are my notes from the Day 2 keynote, The Integration of Technologies with Office 365. The speaker: Rob Leffers, the director of program management for the Office 365 apps team.

image_dbbecd7b-9298-4dde-993a-acd9d9461515Agenda
– Our vision
– What’s next
– Futures
– Calls to action

Intersections
– Office
– Visual Studio
– Azure

Connect to Office 365 services
– Users and groups
– Files
– Mail
– Calendar
– Contacts

Build using an open platform
– Azure
– .Net
– Android
– iOS
– Html5
– Xamarin

Robust Office 365 APIs
– designed for openness and flexibility
– Consistent development platform
– Powering a world of devices

Read the rest of this post »