Quantcast
Channel: MSDN Blogs
Viewing all 35736 articles
Browse latest View live

EF 6.1.0 Beta 1 Available

$
0
0

Since the release of EF6 our team has started working on the EF6.1 release. This is our next release that will include new features.

 

What’s in Beta 1?

Entity Framework 6.1 is a minor update to Entity Framework 6 and includes a number of bug fixes and new features. The new features in this release include:

  • Tooling consolidation provides a consistent way to create a new EF model. This feature extends the ADO.NET Entity Data Model wizard to support creating Code First models, including reverse engineering from an existing database. These features were previously available in Beta quality in the EF Power Tools.
  • Handling of transaction commit failures provides the new System.Data.Entity.Infrastructure.CommitFailureHandler which makes use of the newly introduced ability to intercept transaction operations. The CommitFailureHandler allows automatic recovery from connection failures whilst committing a transaction.
  • IndexAttribute allows indexes to be specified by placing an [Index] attribute on a property (or properties) in your Code First model. Code First will then create a corresponding index in the database.
  • The public mapping API provides access to the information EF has on how properties and types are mapped to columns and tables in the database. In past releases this API was internal.
  • Ability to configure interceptors via the App/Web.config file(allowing interceptors to be added without recompiling the application).
  • Migrations model change detection has been improved so that scaffolded migrations are more accurate; performance of the change detection process has also been greatly enhanced.
  • Performance improvements including reduced database operations during initialization, optimizations for null equality comparison in LINQ queries, faster view generation (model creation) in more scenarios, and more efficient materialization of tracked entities with multiple associations.

 

Where do I get the beta?

The runtime is available on NuGet. Follow the instructions on our Get It page for installing the latest pre-release version of Entity Framework runtime.

The tooling for Visual Studio 2012 and 2013 is available on the Microsoft Download Center.

 

Support

This is a preview of features that will be available in the final release of EF6.1 and is designed to allow you to try out the new features and report any issues you encounter. Microsoft does not guarantee any level of support on this release.

If you need assistance using the new features, please post questions on Stack Overflow using the entity-framework tag.

 

Thank you to our contributors

We’d like to say thank you to folks from the community who contributed features, bug fixes, and other changes to the 6.1 release - RogerAlsing, ErikEJ, and mikecole.

In particular, we’d like to call out the following contributions:

  • Support for String.Concat and .ToString in LINQ queries (RogerAlsing)
  • Support for enum HasFlags method in LINQ queries (RogerAlsing)
  • Entity SQL canonical function support for SQL Server Compact (ErikEJ)
  • Fix for a bug that was affecting EF running under Mono (ErikEJ)

 

What’s next?

All the features we plan to include in the final release of EF6.1 are included in this Beta. At this stage our team is tidying up a few things with the new features and fixing any high priority bugs that are reported.


February 2014 Internet Explorer Updates

$
0
0

Microsoft Security Bulletin MS14-010 - Critical

This security update resolves twenty-three privately reported and one publicly disclosed vulnerabilities in Internet Explorer. The most severe vulnerabilities could allow remote code execution if a user views a specially crafted Web page using Internet Explorer. An attacker who successfully exploited the most severe of these vulnerabilities could gain the same user rights as the current user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

This security update is rated Critical for Internet Explorer 6, Internet Explorer 7, Internet Explorer 8, Internet Explorer 9, Internet Explorer 10 and Internet Explorer 11 on Windows clients, Moderate for Internet Explorer 6, Internet Explorer 7 on Windows servers, and Important for Internet Explorer 8, Internet Explorer 9, Internet Explorer 10, and Internet Explorer 11 on Windows servers. For more information, see the full bulletin.

Recommendation. Most customers have automatic updating enabled and will not need to take any action because this security update will be downloaded and installed automatically. Customers who have not enabled automatic updating need to check for updates and install this update manually. For information about specific configuration options in automatic updating, see Microsoft Knowledge Base Article 294871.

For administrators and enterprise installations, or end users who want to install this security update manually, Microsoft recommends that customers apply the update immediately using update management software, or by checking for updates using the Microsoft Update service.

— Wilson Guo, Program Manager, Internet Explorer

AzureCAT Chalk Talks at Strata 2014

$
0
0

This week the AzureCAT team is excited to make our first team appearance at the Strata conference. For those of you unfamiliar with the AzureCAT team, we are an international group of about 70 Azure and data geeks nestled in the heart of the Cloud and Enterprise division at Microsoft. We are the folks the field and execs call when a customer has a big deployment.  I’m talking about the biggest, baddest data, data storage, analytics, and cloud app scenarios out there.  To date we have handled hundreds of these engagements and are still going stong. Our team takes those learnings back to the engineering teams to help keep the customer the focus of design and make sure they are aware of the challenges our customers face. We also make a habit of taking those learnings back to you, our community. This year we are bringing that knowledge to Strata.  

This year at the Strata Microsoft booth, we’ve put together a Microsoft Booth Knowledge Theater where we will present a series of talks demonstrating how Microsoft excels in cloud and data. Below is a list of the presentations we’ll bring to you live. We’re excited to share our experiences and even more excited about everything we can learn from all of you at the event.

We have a great lineup of quick learning snacks in the 'Knowledge Theater’ hosted by Microsoft's AzureCAT. We are excited to see you at the Microsoft booth and at the Microsoft Cybercrimes presentation. For more great information, follow us on Twitter at @winazurecat.

Store Once, Use Often – Sharing Cloud Data with Multiple HDInsight Hadoop Clusters

Cindy Gross http://blogs.msdn.com/cindygross

Wednesday, February 12th at 12:30 pm (Microsoft Booth Theater)

Thursday, February 13th at 1:30 pm (Microsoft Booth Theater)

 With Windows Azure HDInsight, you can load your data once into Azure, transform and cleanse that data with the tool of your choice, then connect multiple Hadoop clusters to the same data source and share the output globally.

What’s New in HDInsight?

Matt Winkler

Tuesday, February 11th at 5:30 pm (Microsoft Booth Theater)

Wednesday, February 12th at 10:30 am (Microsoft Booth Theater)

Windows Azure HDInsight is the service that allows you to harness the power of Hadoop to put powerful big data analytics and machine learning at your fingertips in the cloud.  Learn about the new capabilities that have been recently delivered in HDInsight, including updated Hadoop components, improved manageability, and additional developer tools.

Combining Relational and Hadoop - PDW and PolyBase

Darwin Schweitzer

Wednesday, February 12th at 3:30 pm (Microsoft Booth Theater)

Thursday, February 13th at 2:30 pm (Microsoft Booth Theater)

The PolyBase technology built into Microsoft’s Parallel Data Warehouse (PDW) appliance allows you to combine relational and MapReduce query results into one result set that can be consumed by your users using Self Service BI capabilities in Excel.

Excel Meets Big Data – Empowering Business Users Through Self-Service

Faisal Mohamood

Wednesday, February 12th at 11:30 am & 6:00 pm (Microsoft Booth Theater)

Wednesday, February 12th at 12:15 pm (Hortonworks Booth)

Thursday, February 13th at 10:30 am (Microsoft Booth Theater)

What do you get when you combine Big Data with Excel’s first-class Self Service BI capabilities?  How do you unlock the power of all your data - big or small, structured or unstructured – in a way that is approachable to business users?  Join us to learn about how we are advancing
the connectivity in Excel to enable business users to leverage data of any shape and size.

From Big Data to Big Visual Insights in 15 Minutes

Sanjay Soni

Tuesday, February 11th at 5:35 pm (Hortonworks booth)

Wednesday, February 12th at 1:30 pm (Microsoft Booth Theater)

Thursday, February 13th at 12:30 pm (Microsoft Booth Theater)

You’ve got your data in HDInsight – now what do you do with it?  Come see how easy it will be for your business users to gain insight and make meaningful data presentations on top of that data – using Excel Self Service BI tools that they are already familiar with.

What is this Azure Thing and How Can I Use It?

Chuck Heinzelman

Wednesday, February 12th at 2:30 pm (Microsoft Booth Theater)

Thursday, February 13th at 11:30 am & 3:30 pm (Microsoft Booth Theater)

You’ve got data. You know the tools you want to use.  Now you need a place to host your data and tools.  Windows Azure provides a wide range of infrastructure services that can be used for hosting your solution – even if it isn’t based on Microsoft technology!

How to view Azure Diagnostics Traces from WADLogsTable in your local console app

$
0
0

If you use Azure Diagnostics in your cloud service, and you use the DiagnosticTraceListener then all of your traces are getting output to a table somewhere called WADLogsTable.

I think it’s definitely a nuisance having to use the Visual Studio’s table viewer or some other program to see those logs. So anyway, to save you from purchasing or downloading some viewer app, here is a very bare bones console app you can run to see what you’ve just output to that table. I may get around to improving this later, I may not. Smile

You may want to hardcode your own connection string in, tweak the time to start reading logs from or even feel excited ot make other improvements like paging and optimized partition queries based on reverse engineering Windows Azure Diagnostics partition key… feel free.

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using Microsoft.WindowsAzure.Storage;

using Microsoft.WindowsAzure.Storage.Auth;

using Microsoft.WindowsAzure.Storage.Table;

 

namespace wadlogs

{

    classProgram

    {

        staticvoid Main(string[] args)

        {

            DateTime utcStartTime = DateTime.UtcNow;

            Console.WriteLine("Enter your storage account connection string, or press enter for 'UseDevelopmentStorage=true;':");

            var connStr = Console.ReadLine();

            connStr = connStr.Trim(new[] { ' ', '\"', '\'', });

            if (string.IsNullOrEmpty(connStr))

            {

                connStr = "UseDevelopmentStorage=true;";

            }

 

            var storageAccount = CloudStorageAccount.Parse(connStr);

            var tableClient = storageAccount.CreateCloudTableClient();

            var table = tableClient.GetTableReference("WADLogsTable");

            var query = table.CreateQuery<GenericTableEntity>()

                .Where(e => e.Timestamp > utcStartTime.AddMinutes(-120));

            var results = query.ToList();

            results = results.OrderBy(x => x.Timestamp).ToList();

            foreach (var row in results)

            {

                Console.WriteLine("{0}: {1}", row.Timestamp, row.Properties["Message"].StringValue);

            }

        }

    }

 

    publicclassGenericTableEntity : ITableEntity

    {

        publicstring ETag { get; set; }

 

        publicstring PartitionKey { get; set; }

 

        publicstring RowKey { get; set; }

 

        publicDateTimeOffset Timestamp { get; set; }

 

        publicIDictionary<string, EntityProperty> Properties { get; set; }

 

        publicvoid ReadEntity(IDictionary<string, EntityProperty> properties, Microsoft.WindowsAzure.Storage.OperationContext operationContext)

        {

            this.Properties = properties;

        }

 

        publicIDictionary<string, EntityProperty> WriteEntity(Microsoft.WindowsAzure.Storage.OperationContext operationContext)

        {

            returnthis.Properties;

        }

    }

}

 

Ghost of VCBlog Posts Past

$
0
0
You don't need to call Ghostbusters. Spend some time (re)reading some great posts from the Visual C++ team blog past. There really are some hidden gems in there! C++ Debugger Tips by Sergey Grankin (8/2006) describes the "special expression and format specifiers that you can use to better examine the content in the debugger's watch windows." Spy++ Internals by Pat Brenner (1/2007) gives a behind the scenes look at the popular tool. Go down memory lane -- "Spy++ is made to be an observer...(read more)

Resources for provisioning and configuring Microsoft Dynamics Online Payment Services

$
0
0

There are many questions related to utilizing Payment Services within Microsoft Dynamics Online.  The purpose of this blog is to provide various resources that may be helpful in the provisioning and configuring of Payment Services.  Bookmark this page and check back for continued updates.

The Dynamics Online quick information page
http://www.dynamicsonline.com/OnlinePaymentsSellPages/sellpage.aspx

Partner and Customer sign in page
http://www.dynamicsonline.com/


Video 
Provisioning Microsoft Dynamics Online Payment Services
(On its way)


Blogs
AX 2012 R2 - Connecting a Dynamics Online payment service to AX accounts receivable
http://blogs.msdn.com/b/axsupport/archive/2013/10/03/ax-2012-r2-connecting-a-dynamics-online-payment-service-to-ax-accounts-receivable.aspx

AX 2012 R2 for Retail - Configuring the EFT Service in the Retail Hardware Profile with Dynamics Online Payment Services
http://blogs.msdn.com/b/axsupport/archive/2013/10/22/ax-2012-r2-for-retail-configuring-the-eft-service-in-the-retail-hardware-profile-with-dynamics-online-payment-services.aspx

AX 2012 R2 for Retail - Configuring POS for test mode with Dynamics Online payment service
http://blogs.msdn.com/b/axsupport/archive/2013/10/09/ax-2012-r2-for-retail-configuring-pos-for-test-mode-with-dynamics-online-payment-service.aspx

Dynamics Online user roles
http://blogs.msdn.com/b/axsupport/archive/2013/03/06/dynamics-online-user-roles.aspx


Information Source
Payment Services - How to choose a payment provider
https://informationsource.dynamics.com//RFPServicesOnline/Rfpservicesonline.aspx?DocName=Payment+Services+%e2%80%93+How+to+choose+a+payment+provider%7cQJ4JEM76642V-8-462

Payment Services - How to Set Up Credit Card Processing (AX 2012 R1)
https://informationsource.dynamics.com//RFPServicesOnline/Rfpservicesonline.aspx?DocName=Payment+Services+%e2%80%93+How+to+set+up+a+demo+of+Payment+Services%7cQJ4JEM76642V-8-464

Payment Services - How to set up Credit Card Processing (AX 2012 R2)
(Updated document on its way)


Download Center:

Microsoft Dynamics AX 2012 White Paper: Credit Card Processing
http://www.microsoft.com/en-us/download/details.aspx?id=28154

PCI Implementation Guide for Microsoft Dynamics AX 2012 R2
http://www.microsoft.com/en-us/download/details.aspx?id=36537


TechNet
Set up payment services
Set up credit card authorizations 
Accounts receivable parameters (form)
Credit card types (form)
Customer credit cards (form)
Payment services (form)



Other Resources Related to Credit Card Processing
AX for Retail: A Better Sample for EFT plug-in (Credit Card processing)
http://blogs.msdn.com/b/axsupport/archive/2012/01/14/ax-for-retail-a-better-sample-for-eft-plug-in-credit-card-processing.aspx

AX for Retail 2012: EFT (Credit Card Processing) Sample is Now Available
http://blogs.msdn.com/b/axsupport/archive/2012/07/18/ax-for-retail-2012-eft-credit-card-processing-sample-is-now-available.aspx

Microsoft Dynamics AX 2009 Security Hardening Guide
http://www.microsoft.com/en-us/download/details.aspx?id=232

Encrypt/Decrypt in AX 2012
http://mukesh-ax.blogspot.nl/2012/09/encryptdecrypt-in-ax-2012.html

Cryptography API in X++
http://blogs.msdn.com/b/mfp/archive/2006/07/12/663387.aspx

How can I restore all my Tfs Databases from script

$
0
0

In this example, I have used the Tfs2008 databases as the list is fairly long.  If you so desire to re-purpose this script for Tfs2010,2012,2013; simply edit the INSERT statement to resemble (keeping in mind that in my example I only have on collection DB:

--Create temp table to store the Tfs Database names
CREATE TABLE #tmp (TfsDBName varchar(MAX))
INSERT INTO #tmp VALUES ('Tfs_Configuration')
INSERT INTO #tmp VALUES ('Tfs_DefaultCollection')
INSERT INTO #tmp VALUES ('TFS_Warehouse')

Please pay attention to the path and name variables used.  You must edit them to match your own environment.

For Tfs2008 Databases:

 --START SCRIPT
 DECLARE @BackUpURL VARCHAR(MAX)
DECLARE @DBBackUpFile VARCHAR(MAX)
DECLARE @DataRestoreURL VARCHAR(MAX)
DECLARE @LogRestoreURL VARCHAR(MAX)
DECLARE @DBRestoreDataFile VARCHAR(MAX)
DECLARE @DBRestoreLogFile VARCHAR(MAX)
DECLARE @DBName VARCHAR(MAX)
DECLARE @DBLogName VARCHAR(MAX)
DECLARE @CompatLevel VARCHAR(MAX)

--Set the URL Variable bellow to the root of your DB backup folder
SET @BackUpURL = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\BackUp\'
SET @DataRestoreURL = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\'
SET @LogRestoreURL = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\'

--Create temp table to store the Tfs Database names
CREATE TABLE #tmp (TfsDBName varchar(MAX))
INSERT INTO #tmp VALUES ('TfsActivityLogging')
INSERT INTO #tmp VALUES ('TfsBuild')
INSERT INTO #tmp VALUES ('TfsIntegration')
INSERT INTO #tmp VALUES ('TfsVersionControl')
INSERT INTO #tmp VALUES ('TFSWarehouse')
INSERT INTO #tmp VALUES ('TfsWorkItemTracking')
INSERT INTO #tmp VALUES ('TfsWorkItemTrackingAttachments')

DECLARE db_cursor CURSOR FOR
SELECT TfsDBName FROM #tmp
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @DBName
WHILE @@FETCH_STATUS = 0

BEGIN

SET @DBLogName = @DBName + N'_log'
SET @DBBackUpFile = @BackUpURL + @DBName + N'.BAK'
SET @DBRestoreDataFile = @DataRestoreURL + @DBName + '.MDF'
SET @DBRestoreLogFile = @LogRestoreURL + @DBLogName + '.LDF'

RESTORE DATABASE @DBName FROM
DISK = @DBBackUpFile
WITH FILE = 1,
MOVE @DBName TO @DBRestoreDataFile,
MOVE @DBLogName TO @DBRestoreLogFile,
NOUNLOAD, REPLACE, STATS = 10

SET @CompatLevel = N'ALTER DATABASE [' + @DBName + '] SET COMPATIBILITY_LEVEL = 100 ' --Update the Database compatibility level to SQL 2008
+ N'ALTER DATABASE [' + @DBName + '] SET RECOVERY FULL WITH NO_WAIT ' --Set the Database to Full Recovery
+ N'ALTER DATABASE [' + @DBName + '] COLLATE Latin1_General_CI_AS ' --Set Database Collation
EXEC(@CompatLevel)

FETCH NEXT FROM db_cursor INTO @DBName
END

CLOSE db_cursor
DEALLOCATE db_cursor
DROP TABLE #tmp
--END SCRIPT

Hope this helps,cheers!

 

Writing your First Driver for Windows !

$
0
0

It would be useful to install Windows Driver Kit, Visual Studio Package and Windows Debugger tools on your machine for driver development. You can download all the required tools from MSDN.

If you are new to driver development for Windows, it is advisable to go through examples provided at Windows Driver Framework MSDN website.

Windows Driver Framework allows you to create drivers on User Mode Driver Framework (UMDF) or Kernel Mode Driver Framework (KMDF).

"Hello World" type driver samples are provided for UMDF and KMDF and will help you get jump started. I would recommend that you go through these samples to get yourself familiar with process of driver development for Windows.

Windows drivers must have an information (INF) file in order to be installed. An INF file is a text file that contains all the information (Driver name and location, Driver version information and Registry information) that the device installation components must have in order to install a driver. More information on Windows "INF"ormation files can be found here.

You can debug your driver using Windows Debugger (or its variants). There are standard debugging techniques that you can utilize to find and analyze the root cause of your issue in your driver. 

MSDN provides tons of samples / documentation that you can utilize for your driver development.

NT Insider (published by OSR) is a good journal on Driver Development.

Generally, the ramp up time for driver development is greater than application development, so give yourself some time and have some patience.

Hope this helps!

Good Luck on your driver writing journey.

 

- Dhaval Shah.


Announcing preview of Microsoft.AspNet.Identity 2.0.0-beta1

$
0
0

Today, we are releasing a preview of ASP.NET Identity. The main focus in this release was to add support for two-factor authentication and fix bugs. We released 2.0.0-alpha1 in December 2013 where we added lots of features. Please read about 2.0.0-alpha1 release here.

Download this release

You can download ASP.NET Identity from the NuGet gallery. You can install or update to these pre-release packages through NuGet using the NuGet Package Manager Console, like this:

  • Install-Package Microsoft.AspNet.Identity.EntityFramework –Version 2.0.0-beta1 –Pre
  • Install-Package Microsoft.AspNet.Identity.Core -Version 2.0.0-beta1 –Pre
  • Install-Package Microsoft.AspNet.Identity.OWIN -Version 2.0.0-beta1 –Pre
  • Install-Package Microsoft.AspNet.Identity.Samples -Version 2.0.0-beta1 –Pre

Please remember to select the “Include Prerelease” option when searching for packages using the NuGet Package Manager or the Package Manager Console. For more information on how to install pre-release packages please read http://docs.nuget.org/docs/Reference/Versioning#Prerelease_Versions and http://docs.nuget.org/docs/release-notes/nuget-1.7#Show_prerelease_packages_in_the_Manage_NuGet_packages_dialog

What’s in this release?

Following is the list of features and major issues that were fixed in 2.0.0-Beta1.

Two-Factor Authentication

ASP.NET Identity now support two-factor authentication. Two-factor authentication provides an extra layer of security to your user accounts in the case where your password gets compromised. Most of the websites protect their data by having a user create an account on their website with a username and password. Passwords are not very secure and sometimes users choose weak passwords which can lead to user accounts being compromised.

To add an extra layer of security, it is important to add a second factor of authentication after a user enters username/ password. Since a password is something a user knows, two-factor authentication allows youto authenticate the user with something only a user possesses such as a phone or email account. Two-factor authentication involves sending the user a code to something only a user has access to such as sending a SMS to user’s phone or emailing the code. The user can enter the code when they get it on their phone or email.

In ASP.NET Identity, the SMS and Email two-factor providers are built in so you can easily configure them to send a text message or email. You can extend and write your own providers such as QR code generators and use Authenticator apps on phones to validate them.

A user can also manage the two-factor authentication options and can enable/ disable two-factor authentication for their user account. This is demonstrated in the ASP.NET Identity Samples NuGet package. A user can also choose to remember the two-factor authentication option if the device they are accessing the website is a personal device so that when they login, they are not asked to verify the two-factor authentication each time. This is a more common usage that we see today in most of the websites.

To try out this feature, you can install ASP.NET Identity Samples NuGet package (in an Empty ASP.NET app) and follow the steps to configure and run the project.

Indexing on Username

In ASP.NET Identity Entity Framework implementation, we have added a unique index on the Username using the new IndexAttribute in EF 6.1.0-Beta1. We did this to ensure that Usernames are always unique and there was no race condition in which you could end up with duplicate usernames.

Enhanced Password Validator

The password validator that was shipped in ASP.NET Identity 1.0 was a fairly basic password validator which was only validating the minimum length. There is a new password validator which gives you more control over the complexity of the password. Please note that even if you turn on all the settings in this password, we do encourage you to enable two-factor authentication for the user accounts.

Code Snippet
  1. manager.PasswordValidator = new PasswordValidator
  2.             {
  3.                 RequiredLength = 6,
  4.                 RequireNonLetterOrDigit = false,
  5.                 RequireDigit = false,
  6.                 RequireLowercase = false,
  7.                 RequireUppercase = false,
  8.             };

 

ASP.NET Identity Samples NuGet package

We are releasing a Samples NuGet package to make it easier to install and run samples for ASP.NET Identity and follow the best practices. This is a sample ASP.NET MVC application. Please modify the code to suit your application before you deploy this in production. The sample should be installed in an Empty ASP.NET application.

Following are the features in this samples package

  • Initialize ASP.NET Identity to create an Admin user and Admin role.
    • Since ASP.NET Identity is Entity Framework based in this sample, you can use the existing methods of initializing the database as you would have done in EF.
  • Configure user and password validation.
  • Register a user and login using username and password
  • Login using a social account such as Facebook, Twitter, Google, Microsoft account etc.
  • Basic User management
    • Do Create, Update, List and Delete Users. Assign a Role to a new user.
  • Basic Role management
    • Do Create, Update, List and Delete Roles.
  • Account Confirmation
  • Password Reset
  • Two-Factor authentication
  • Security Token providers
  • Configure the Db context and UserManager to use a single instance per request.
  • The AccountController has been split into Account and Manage controller. This was done to simplify the account management code.

Following is the list of features and major issues that were fixed in 2.0.0-Alpha1.

For the full list of the features please read the following blog post for more details.

  • Account Confirmation
  • Password Reset
  • Security Token Provider
  • Make the type of Primary Key be extensible for Users and Roles
  • Support IQueryable on Users and Roles
  • Support Delete operation through the UserManager
  • UserManagerFactory Middleware
  • DbContextFactory Middleware

 

Entity Framework 6.1.0-Beta1

ASP.NET Identity 2.0.0-beta1 depends upon Entity Framework 6.1.0-beta1 which was also released today. For more details please read the following announcement post for more details.

List of bugs fixed

You can look at all the bugs that were fixed in this release by clicking this link.

Samples

  • We have a sample project which shows these new features at https://aspnet.codeplex.com. Please look for the Identity folder in the source. https://aspnet.codeplex.com/SourceControl/latest
  • For documentation on ASP.NET Identity please visit http://www.asp.net/identity. We are working on adding more documentation on this site.

Known Issues/ Change list

Migrating from ASP.NET Identity 2.0.0-alpha1 to 2.0.0-beta1

Following are the changes you will have to make to your application if you are upgrading from 2.0.0-alpha1 to 2.0.0-Beta1 of Identity.

· GetUserManager() extension method moved under Microsoft.AspNet.Identity.Owin namespace

· GetConfirmationToken property on UserManager changed to GetEmailConfirmationToken

· ConfirmUser() method changed to ConfirmEmail()

· IsConfirmed() method changed to IsEmailConfirmed()

· UserManagerFactory() changed to CreatePerOwinContext<T>()

· ApplicationCreate static method on UserManager method now has an additional method which takes in a parameter for IOwinContext

· PasswordResetTokens and UserConfirmationTokens properties on UserManager are now replaced with a single UserTokenProvider property on UserManager

· DataProtectorTokenProvider class now strongly typed with generics DataProtectorTokenProvider<TUser>

· IsConfirmed column in the AspnetUsers Table has been renamed to EmailConfirmed.

    • If you are using Entity Framework Code First Migrations to migrate the database from 2.0.0-alpha1 to 2.0.0-Beta1 then you need to edit the migrations script that were generated by the EF migrations.

                       Following is what is generated

            AddColumn("dbo.AspNetUsers", "EmailConfirmed", c => c.Boolean(nullable: false));

            DropColumn("dbo.AspNetUsers", "IsConfirmed");

            You need to change it to

                        RenameColumn("dbo.AspNetUsers", "IsConfirmed","EmailConfirmed");

Known issues in Entity Framework while migrating from Entity Framework 6.1.0-alpha1 to 6.1.0-beta

Entity Framework changed the way indexes were being recognized which causes the indexes between tables to be generated even though they exist. This is a known behavior and occurs only when migrating from EF 6.1.0-alpha to 6.1.0-beta1. For ASP.NET Identity the generated migration script will have the following incorrect entries

            CreateIndex("dbo.AspNetUserRoles", "UserId");

            CreateIndex("dbo.AspNetUserRoles", "RoleId");

            CreateIndex("dbo.AspNetUsers", "VehicleId");

            CreateIndex("dbo.AspNetUserClaims", "UserId");

            CreateIndex("dbo.AspNetUserLogins", "UserId");

Any custom index declaration by user defined classes will also be present here. Running this as is will cause it to fail since the indexes are already present. The solution is to delete these ''CreateIndex' calls for existing indexes

 

Migrating from ASP.NET Identity 1.0 to 2.0.0-beta1

If you are migrating from ASP.NET Identity 1.0 to 2.0.0-Beta1, then please refer to this article on how you can use Entity Framework Code First migrations to migrate your database http://blogs.msdn.com/b/webdev/archive/2013/12/20/updating-asp-net-applications-from-asp-net-identity-1-0-to-2-0-0-alpha1.aspx

This article is based on migrating to ASP.NET Identity 2.0.0-alpha1 but the same steps apply to ASP.NET Identity 2.0.0-beta1

Give feedback and get support

  • If you find any bugs please open them at our Codeplex Site where we track all our bugs https://aspnetidentity.codeplex.com/
  • If you want to discuss these features, please discuss them on Stack Overflow and use the following tag “asp.net-identity”

Thank You for trying out the preview and your feedback for ASP.NET Identity.

Super-enthused about Blue Button in pharmacies… I think

$
0
0

As the old saw goes, we were Blue Button before Blue Button was cool. We were part of the Markle workgroup where the concept was born, and at the very first Community Health Data Initiative conference we demonstrated how veterans could upload their BB files into HealthVault to share with other providers and use with hundreds of HealthVault-enabled apps. Still going strong today; check out the video at the end of this post!

Building on those early days, we’ve been key contributors to Blue Button Plus --- today, every (US-based) HealthVault user can receive and send BB+ messages and data using their free address (get yours today!), and thousands of messages pass through this channel every month, even before MU2 really takes hold. We even give back broadly by hosting the “trust bundles” for this stuff.

Suffice to say, we are big believers.

So on the face of things, we’re pretty excited about last Friday’s announcement that a bunch of pharmacies have pledged to make their information available via Blue Button. Medication data is one of the most useful things for folks to have in their personal records. It’s the basis of a great emergency profile, and there are a bunch of great apps out there like MyMedSchedule to help folks stick to their meds schedule or be warned about potentially dangerous interactions.

(Open invitation to any of these folks that we aren’t already working with --- try sending your BB data to a HealthVault address, and if you have any issues, just let us know.)

Buuuuuutt…. Despite that enthusiasm, we’re a little skeptical too. Anytime we see phrases like these, our spidey sense starts tingling:

  • “the following companies are committing to work over the next year towards standardizing patient prescription information”
  • “is exploring plans to provide customers with a machine-readable copy of their records”
  • “committed to improving patient engagement and empowerment through expanded access to their own health data and an evolving set of online service capabilities”

Let’s be up front here --- there isn’t any credible pharmacy today that is not already providing some online ability to order a refill. So if we’re going to define the Blue Button bar as “provide online access” then of course they all are doing it right now.

But what most of them are NOT doing (CVS as a major exception) --- is what Blue Button was really intended for --- making it easy for their customers to get their information out of their walled gardens. And frankly the weasel words in the release sound more like free PR with no commitment than anything else.

We’ll see. I am perhaps a bit over-sensitive to this because we’ve worked so hard to always back up our HealthVault statements with shipping, production code that real people can use. I really, really hope that that’s what will come out of the pharmacy industry on this. Fingers crossed!

(Please visit the site to view this video)

AX 2012 - Tipo de cambio cruzado

$
0
0

La funcionalidad denominada "Tipo de cambio cruzado" permite, en AX, utilizar un tipo de cambio diferente al "Tipo de cambio actual" definido en la forma Tipos de cambio de monedas.

Considere que, en AX 2012, para utilizar el tipo de cambio cruzado, se deben cumplir las siguientes tres condiciones:

1. Se está registrando el pago de una factura
2. El pago y la factura tienen divisas diferentes
3. Ninguna de las anteriores es la divisa de la entidad legal

Por ejemplo:
La divisa de la entidad legal son pesos. Se registra una factura en dólares la cual va a ser pagada en euros.
Únicamente en un escenario de negocio similar al anterior, puede utilizarse el "Tipo de cambio cruzado". Si la factura o el pago fueran en pesos, no se podría utilizar esta funcionalidad en AX 2012.



Para B 

Clarity Comes to Cloud Privacy

$
0
0

In exactly a month’s time, Australia’s privacy regulatory regime will change. New amendments to the Privacy Act come into force on 12 March 2014.

Microsoft Australia welcomes the incoming Privacy Act amendments.

Contrary to some reports, the new amendments to the Privacy Act are not bad for cloud services.

The new amendments just help to clarify that if an enterprise or Federal Government agency collects personal information, they are ultimately responsible for protecting the privacy of that information.

It does mean that Enterprises and governments should do their research.

Read more

...(read more)

My HIMSS prescription for basic survival and optimal enjoyment

$
0
0
So the big meeting( in Orlando this year) is just around the corner. If you, like me, have been attending HIMSS for many years before this, then you’ll know what to expect. It will be the best of times and the worst of times. You’ll leave with sore feet, blood shot eyes, heartburn, and a head that is swimming from information overload. I remember the very first time I attended HIMSS about 15 years ago. It was small by comparison to what you’ll see today. Even then I remember thinking to myself as...(read more)

Welcome to the MSDN Services Status Page

$
0
0

This blog will be used to communicate service or customer impacting issues across the MSDN and Technet sites.  Our goal is to greatly improve our communication of issues with our customers and this is one of our first steps in opening up a more relevant communication channel with you. 

What you can expect to see on this blog:  Timely updates around significant outages, degradations in performance or functional bugs.

Best regards,

The MSDN Service Delivery Team

AX 2012 - Tipo de cambio en órdenes de compra

$
0
0

Si está realizando compras con divisa extranjera mediante la funcionalidad de órdenes de compra, tenga en cuenta que:

1. El tipo de cambio que se utilizará al momento de registrar la recepción (provisión de compra) será el tipo de cambio actual de la "Fecha de recepción del producto".
2. El tipo de cambio para la facturación es el tipo de cambio actual de la "Fecha de registro".
3. Al registrar la factura, se realiza la reversión de la recepción (cancelación de la provisión), la cual utiliza el mismo tipo de cambio de la recepción.


Por ejemplo:
Se tiene una entidad legal con Divisa de contabilidad = USD

Los tipos de cambio que se tienen se presentan a continuación:

a. Al 17 de octubre 13 pesos = 1 dólar
b. Al 31 de octubre 14 pesos = 1 dólar
c. Al 30 de diciembre 15 pesos = 1 dólar




1. Se realiza una orden de compra por $3000 pesos

2. El tipo de cambio utilizado para la recepción de la orden de compra (provisión) se obtiene del tipo de cambio utilizado en la fecha especificada para la “Fecha de recepción del producto”

 


3. El registro se hace el 17 de octubre (Tipo de cambio 0.07692 dólar por peso [13 MXN @ 1 USD])




4. El tipo de cambio utilizado para la factura de la orden de compra se obtiene del tipo de cambio utilizado en la fecha especificada para la “Fecha de registro”




5. El registro se hace el 30 diciembre (Tipo de cambio 0.06667 dólar por peso [15 MXN @1 USD] )




Nota. La reversión de la recepción (cancelación de la provisión) se registra al mismo tipo de cambio al que se realizó la recepción.




Para E


Preview of Dynamic Data Provider and EntityDataSource Control for EF6

$
0
0

This post was originally posted on the .NET Web Development and Tools Blog.

We are pleased to announce an update to ASP.NET DynamicData and EntityDataSource control, so that they work with Entity Framework 6.

 

What’s in this preview

  • DynamicData provider for Entity Framework 6
  • EntityDataSource control for Entity Framework 6

 

How to install this preview

You can download this preview for ASP.NET DynamicData.EFProvider (http://www.nuget.org/packages/Microsoft.AspNet.DynamicData.EFProvider/) and EntityDataSource (http://www.nuget.org/packages/Microsoft.AspNet.EntityDataSource/) as preview NuGet packages from the NuGet gallery. You can install these pre-release packages through NuGet using the NuGet Package Manager Console, like this:

  • Install-Package Microsoft.AspNet.DynamicData.EFProvider -Version 6.0.0-alpha1 –Pre
  • Install-Package Microsoft.AspNet.EntityDataSource -Version 6.0.0-alpha1 –Pre

 

Getting started

Microsoft.AspNet.DynamicData.EFProvider

This package has a DynamicData EFProvider for Entity Framework 6. This provider can work with a Model (either Code First or EF Designer) which was created using Entity Framework 6. This package also installs the Page Templates, Entity Templates and Field Templates which are required for DynamicData. The templates have been updated to use Microsoft.AspNet.EntityDataSource control which we are also previewing today as well.

For more information on ASP.NET DynamicData please see http://msdn.microsoft.com/en-us/library/cc488545.aspx

Following are the steps for using this package in a ASP.NET DynamicData application:

  • Create a new ASP.NET Dynamic Data Entities Web Application
  • Add the Microsoft.AspNet.DynamicData.EFProvider NuGet package
  • This will do the following
    • Add a reference to the DynamicData EFProvider binary
    • Install the templates. If you are starting with a new project, then you can override the templates. If you have an existing application, then you should be careful when overriding the changes. The templates replace the EntityDataSource control which shipped in .NET with Microsoft.AspNet.EntityDataSource and also have a few bug fixes in the Many-Many field template so they work with Entity Framework 6.
  • Create your model using Entity Framework Code First or EF Designer.
  • Add the following code in RegisterRoutes in Global.asax.cs to register your EF Model:
    DefaultModel.RegisterContext(
        new Microsoft.AspNet.DynamicData.ModelProviders.EFDataModelProvider(
    () => newNorthwindEntities1()), newContextConfiguration { ScaffoldAllTables = true });
  • Run the project
  • You would see all the tables listed on the Default page.

Microsoft.AspNet.EntityDataSource Control

This is an update to the EntityDataSource control which shipped in the .NET Framework. The EntityDataSource control has been updated to work with Entity Framework 6.

To use this control, please do the following

  • Create an ASP.NET application
  • Install the packageMicrosoft.AspNet.EntityDataSource
    • This package will
      • install the runtime binary for Microsoft.AspNet.EntityDataSource
      • Install the EntityFramework version 6 NuGet package
      • Add the following tag prefix in web.config
        <pages> <controls> <add 
        tagPrefix="ef"
        assembly="Microsoft.AspNet.EntityDataSource"
        namespace="Microsoft.AspNet.EntityDataSource" /> </controls> </pages>
  • Create a new Web Form page
  • Use the control as follows and bind it to any Databound control such as GridView, FormView etc.
    <ef:EntityDataSource ID="GridDataSource" runat="server" EnableDelete="true" /> 
 

Known Issues

  • The templates in Microsoft.AspNet.DynamicData.EFProvider are for C# only.
  • The templates in Microsoft.AspNet.DynamicData.EFProvider are for Web Application projects only and will not work for WebSites projects.

 

Give feedback

If you find any issues with this preview, please file issues at the EntityFramework CodePlex site https://entityframework.codeplex.com

Thank you for trying out the preview and helping us make it better.

CERTIFICATION - Why get certified and accredited?

$
0
0

A new infographic from the Microsoft Partner Network Training shows MPN Training by the numbers, including the quantified benefits of certification to teams, and how much training costs.

image

What’s new in Azure Mobile Services 0.1.6.2905

$
0
0

Those are some changes included in this week’s release:

  • Synchronous version of the user.getIdentities method has been deprecated: as mentioned in a previous post, this shouldn’t be used anymore, and now a warning will be written to the user logs to remind people of changing it.
  • Application SQL errors should be written to the user logs: there were some SQL errors which were not being written to the user logs; this has been fixed now.
  • Insert calls with an ‘id’ field for tables with integer ids will always fail: we fixed a bug in which in some scenarios this invalid insert would succeed. Tables with integer ids do not support inserts where the ‘id’ member is passed in the POST body (even if the value is null). For tables with string ids, it is valid to insert an item specifying its id.

As usual, feel free to send us questions and comments in this blog or in our forums.

Dynamics CRM 2011 and 2013 SDK Assemblies now on NuGet

$
0
0

Hey everyone – we have a great article today provided by a “guest” blogger Kenichiro Nakamura from our Japanese office – he’s also a Microsoft Dynamics CRM PFE who recently joined PFE from the CRM support team.  Recently, he’s been a blogging maniac on the Dynamics Japan blog, posting dozens of articles and even translating our CRM in the field blog articles for their dedicated readers – as such all his articles are in Japanese.  In an effort to keep his English translation skills sharp and help keep our blog content fresh he’s going to work with our writers to post English versions of his blog articles!

Today’s post highlights a nice feature that many of you may not have realized is out there.  Our CRM SDK dev team is now hosting the Microsoft Dynamics CRM SDK assemblies on NuGet.

What/Why is NuGet?

When you develop CRM SDK program like console application or plug-ins, one of the first things you is download the SDK package and pull out the SDK assemblies for references. Then whenever a new SDK version is available, you have to re-download full SDK packages and update references manually – something that can be painful.

NuGet is a package manager for the Microsoft development platform, it also has a Visual Studio add-in which helps developers manage updates and retrieving older versions. By using NuGet, you can download necessary assemblies from within your project and it automatically adds additional references, too! When newer version of assemblies are available, Visual Studio will alert you and you can easily update assemblies by single click!

Currently we have 5 NuGet packages and today, we will show you how to use them in your Visual Studio projects.

Step by Step

1. Open Visual Studio and create new project. In this demo, I created .NET Framework 4.0 C# console application (make sure you don’t accidentally target the Client Profile as CRM Projects will only compile under the .NET 4.0 profile).

2. Right click project and select “Manage NuGet Packages…”.

3. Select Online on the left pane, and search “crmsdk”. At this moment, it will find 5 NuGet packages then select “Microsoft Dynamics CRM 2013 SDK core assemblies”, and click “Install”.

4. It will install the package.

5. Some packages ask you license acceptance, if prompted, accept license agreement (after you read it, of course)

6. Close NuGet Package Manager after completing installation.

7. Expand “References” to confirm you have CRM SDK assemblies, as well as additional references.

Update Experience

Now, what happens when the next UR of CRM 2013 ships or an updated version of the SDK binaries are released – or what if your project needs to target an older version? Here we’ll install older version of the CRM NuGet package to test the update experience. To do so, you need to use Package Manager Console to install older version by using command.

1. In your project

2. Click TOOLS | Library Package Manager | Package Manager Console.

3. Type following command in the Package Manager Console.

>Install-Package Microsoft.CrmSdk.CoreAssemblies -Version 6.0.0

4. After it completes package installation, expand Reference to confirm it downloaded all the assemblies as expected. Now your project has older version of assemblies.

5. You will eventually be notified when there is newer version, but to save time here, let’s check for the updated assemblies manually.

6.  Right click your project and click “Manage NuGet Packages….”

7. Click Updates on the left pane. It automatically finds update. You just need to click Update button to update them.

Microsoft Dynamics CRM 2011 SDKs

You can also use NuGet to obtain Microsoft Dynamics CRM 2011 SDK binaries, but in this case if you will have to specify your version because the latest assembly versions published are for Microsoft Dynamics CRM 2013.

For example, use following command to obtain 5.0.18.

>Install-Package Microsoft.CrmSdk.CoreAssemblies -Version 5.0.18

Have questions about this?  Looking for guidance or workshops on CRM Developer topics?  Please reach out and let us know – use the contact links on our site.  Also, don’t forget about Dynamics Convergence 2014 March 4th – 7th – if you haven’t registered yet head on over and get registered.  We’ll be speaking in no fewer than seven Dynamics CRM sessions this year and we absolutely want readers of our blog to be there to ask questions and say hello!  For a list of our sessions – head over to the Schedule Builder and search for speakers: Shawn Dieken, Sean McNellis, Jeff Thompson, Brandon Kelly, and Daren Turner for a list of our sessions.

Thanks for reading!

Ken & Sean

IntelliTrace MVC Navigation

$
0
0

The Microsoft Monitoring Agent allows you to collect reliability and performance data for web applications and to review the data using IntelliTrace. For Microsoft Visual Studio 2013 Ultimate, Update 2, we have added the ability to easily navigate to Actions and Controllers for Model View Controller (MVC) web sites. Let’s examine that experience in this blog post.

Summary Page

For this example, assume that I have collected data using the Microsoft Monitoring Agent for my MVC application. I open up the resulting IntelliTrace file in Visual Studio, open the associated solution and on the summary page I can see some performance violations (BTW, we now have grouping for events as you can see).

Performance Violations

I double-click on the first row to investigate the newest event in the group.

Details Page

The details page for the event shows the slowest Hot Path for the event. In this case we can see the HomeController.Index() method is slow.

Performance Details Page

I might choose to ‘Debug This Call’, but instead let’s explore the new MVC-specific functionality in VS2013 Update 2, by expanding the first row – we see that next.

Exploring MVC Actions and Controllers

When we expand the ‘MVC page : Home Index’ row we see links for the action (‘Index’) and the controller (‘Home’). Clicking on the ‘Index’ hyperlink shows all the action methods named ‘Index’ (or tagged with the ActionNameAttribute ‘Index’) in the current solution that are in classes named ‘HomeController’, which also inherit from the MVC Controller class as per the following screenshot.

Actions Selection

In the screenshot example above, I hovered over one of the actions to also see a source code preview.

I can also click on the ‘Home’ controllers link and see the list of controllers call ‘HomeController’, that inherit from MVC ‘Controller’. In this example, I have 3 controllers and I hover over one to see a source code preview.

Controller Selection

While seeing this data is cool, at some point I will want to pick one and go to source – let’s look at that next.

Navigation to source

From either list, I can double-click to navigate to source. For example, double-clicking on the ‘Index’ action takes me here:

navigate to source

If you don’t have the solution open, clicking on actions or controllers will show the following:

no solution found

You just need to open a solution to fix this issue.

Also if you haven’t built your solution, a warning may show and your results may not be complete, as shown below – you can fix that by building your solution.

no controllers found 

Prerequisites: Source, but not necessarily symbols

Note that these code navigation scenarios work even if the solution you have open when the itrace file is opened does not exactly match what is deployed. This is in contrast to typical debugging source code navigation, where symbols (PDB files) are required in order to navigate to source. If you want to be sure that code you are viewing does exactly match the deployed code, you may use ‘debug this call’ for a given row on the Performance Details page.

In Closing

We hope you find the ability to quickly and easily navigate to MVC controllers and actions from IntelliTrace performance events useful. For feedback on this, or any IntelliTrace feature, please ask us at our diagnostics MSDN forum.

Viewing all 35736 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>