fmDotNet

fmdotnet logo

 

 

fmDotNet is our pet open source project, led by Wim Decorte. You can find out more at the SourceForge project page.

fmDotNet makes it easy to exchange data with FileMaker from any .NET project (C#, VB.NET). Not only dynamic web pages (ASP.NET) but also desktop applications, windows services and even from Mobile applications. (MonoTouch and MonoDroid use the Mono implementation of the .NET framework on iOS and Android based devices.

Using FileMaker's XML publishing you can extract data using a URL like this (finding records where the content of someField matches someValue on a layout named someLayout in file someFile):

 http://TheServer/fmi/xml/fmresultset.xml?-db=someFile&-lay=someFile&some...

The challenge is in getting the URL right but even more in handling the XML data that FileMaker returns and extracting meaningful data from it:

FileMaker XML data

 

With fmDotNet this process gets a lot simpler, it takes just a couple of lines of code to talk to FileMaker Server, request the data and return a standard .NET DataSet object.

In C#

    FMSAxml f = new FMSAxml(scheme.HTTP, "TheServer", "80", "someAccount", "somePW");

    f.SetDB("someFile");

    f.SetLayout("someLayout");

    FindRequest query =  f.CreateFindRequest(searchType.subset);

    query.AddSearchField("someField", "someValue")

    DataSet result = query.Execute();

 

In VB.NET

    Dim f As New FMSAxml(scheme.HTTP, " TheServer ", "80", " someAccount ", " somePW ")

    f.SetDB("someFile")

    f.SetLayout("someLayout ")

    Dim query As FindRequest = f.CreateFindRequest(FMSAxml.searchType.subset)

    query.AddSearchField("someField", "someValue")

    Dim result As DataSet = query.Execute()