private void ProcessTransformations(int classId, string className)
    {
        // Get the transformations
        DataSet transformationsDS = TransformationInfoProvider.GetTransformations(classId);

        if (!DataHelper.DataSourceIsEmpty(transformationsDS))
        {
            foreach (DataRow transformationRow in transformationsDS.Tables[0].Rows)
            {
                // Get the type
                string type = ValidationHelper.GetString(transformationRow["TransformationType"], "ascx");
                TransformationTypeEnum transformationType = TransformationInfoProvider.GetTransformationTypeEnum(type);

                // Only export ASCX transformations
                if (transformationType == TransformationTypeEnum.Ascx)
                {
                    string transformationName = ValidationHelper.GetString(transformationRow["TransformationName"], "");
                    string transformationCode = ValidationHelper.GetString(transformationRow["TransformationCode"], "");

                    int    checkedOutByUserId    = ValidationHelper.GetInteger(transformationRow["TransformationCheckedOutByUserID"], 0);
                    string checkedOutMachineName = ValidationHelper.GetString(transformationRow["TransformationCheckedOutMachineName"], "");

                    if ((checkedOutByUserId == 0) || (checkedOutMachineName.ToLower() != HTTPHelper.MachineName.ToLower()))
                    {
                        string filename = TransformationInfoProvider.GetTransformationUrl(className + "." + transformationName, null, TransformationTypeEnum.Ascx);

                        // Prepare the code
                        string code = transformationCode;
                        code = TransformationInfoProvider.AddTransformationDirectives(code, true);

                        SiteManagerFunctions.SaveCodeFile(filename, code);
                    }
                }
            }
        }
    }