Files
Oogynize/DataAccessLayer/ResourceHelper.cs

69 lines
2.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
using System.IO;
using System.Collections.Specialized;
namespace Foo.DataAccessLayer
{
class ResourceHelper
{
// Used by DB to keep track of labels and Versioning
public static StringDictionary s_VersioningTablesMap = new StringDictionary();
/// <summary>
/// Get All Sql Table Resource Names
/// </summary>
/// <returns></returns>
public static string[] GetTableResourceNames()
{
List<String> tableResources = new List<string>();
string[] resourceNames = Assembly.GetExecutingAssembly().GetManifestResourceNames();
foreach (string ResourceName in resourceNames)
{
if(ResourceName.Contains("DataAccessLayer.Sql.Tables."))
tableResources.Add(ResourceName);
}
return tableResources.ToArray<String>();
}
/// <summary>
/// Gives you just the Table Name without the Resource string before and after
/// </summary>
/// <param name="TableResouceName">a table Resource name</param>
/// <returns>the table name</returns>
public static string GetTableNameFromTableResourceName(string TableResouceName)
{
// First trim the sqlce
TableResouceName = TableResouceName.Replace(".sqlce", "");
// Now find the last dot and trim from there
int index = TableResouceName.LastIndexOf('.');
return TableResouceName.Substring(index + 1);
}
/// <summary>
/// Get the Text/SQL String from a specified ResourceFileName
/// </summary>
/// <param name="resourceFileName">a specific ResourceFileName</param>
/// <returns></returns>
public static string GetTextSqlFromResourceFile(string resourceFileName)
{
StreamReader stream = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceFileName));
if (stream != null)
{
string strText = stream.ReadToEnd();
strText = strText.Replace('\r', ' ');
strText = strText.Replace('\n', ' ');
return strText;
}
else
return string.Empty;
}
}
}