I am working on an c# application and using some Async calls. I have to use an SDK from a given vendor to integrate into the vendors platform. It looks likes the SDK async methods are based on pre 5.0 C# and using the APM model instead of TPM (most of my async work has been with TPM and the await command). 

I found the FromAsync method to wrap a APM async method into TPM but having a difficult time with it (hopefully I am on the right path).

The async method in question is called "CommitAsync" and it is from the vendors SDK. When I hover over the method in VS, it outputs this: 

```
EditableListConfigurationObject<UserConfiguration.Property>.CommitAsync(System.ComponentMode.AsyncCompletedEventHandler completedCallback, object userState)

```

So I am trying to convert to TPM and so far have this (which is throwing errors):

```
var x = Task.Factory.FromAsync(userConfigurationObject.CommitAsync, UserCreated);

```

UserCreated is my callback function

```
private void UserCreated(Object sender, SystemComponentMode.AsyncCompletedEventArgs args) 
{}

```

When I hover over "userConfigurationOBject.CommitAsync in the FromAsync method, it says "cannot convert from method group to IAsyncResult"

From what I understand, the first parameter in FromAsync is the begin function and the second is the end/complete function. If I am understanding the APM async model correctly and this SDK, I would assume CommitAsync would be the begin function and then its callback would the end function?