I have a test Biztalk project with an Orchestration containing a couple of Receive shapes, Send Shapes, and an Expression Shape. The Expression shape makes a call to a referenced dll that was written in C#. The C# dll is in the GAC, the class is marked as Serializable and the class has only one static method that is supposed to create a file on the disk in a folder.
Everything builds and deploys, but when I kick off the Orchestration by placing a file in the Receive folder, all the shapes do what they are supposed to do EXCEPT for the Expression shape. The code definitely works as I have tested it locally and the directory is one that the BT app is already accessing, so I don't think it is a security issue.
Below is the C# code and below that is how I am calling the code from the Expression shape, can anyone offer any suggestions as to what is going wrong?:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace TestHelp
{
    [Serializable]
    public class TestWrite
    {
        public static void CreateFile()
        {
            FileInfo fi = new FileInfo(@"C:\Unrecorded\Out\DataForProcess\Test.txt");
            fi.Create();
        }
    }
}
Expression Shape code:
TestHelp.TestWrite.CreateFile();