Aquí hay una específica ejemplo del problema que involucra a las Federaciones SQL de Azure ... que divide los datos en db's separados de acuerdo con un rango clave.
Los tipos clave gama son:
SQL/.Net tipo SQL/CLR .Net
INT/SqlInt32/Int32, Anulable
BIGINT/SqlInt64/Int64 Nullable
UNIQUEIDENTIFIER/SqlGuid/Guid, Nullable
VARBINARY (n), n max 900/SqlBytes, SqlBinary/byte []
Idealmente, un C# función PARAM podría tomar cualquier tipo SQL .NET o tipo CLR .Net pero de colocar en una sola categoría de tipo está bien.
¿Sería un param tipo "objeto" el camino a seguir? Y, ¿hay una forma factible de identificar el tipo y convertirlo en consecuencia?
El concepto es algo así como:
public void fn (objeto obj, cadena fedName, DISTNAME cadena, bool filteringOn)
{
... averiguar qué tipo obj es asegurar es uno de los tipos aceptables ...
cadena clave = obj.toString();
return string.Format ("USE FEDERATION {0} ({1} = '{2}') CON RESET, FILTERING = {3}", fedName, distName, key, (filteringOn? "ON": " APAGADO"));
}
Aunque el valor de parámetro es arrojado a la cadena, se refundió/comprobado en el lado del servidor SQL para validarlo en el lado aplicación que se desea.
Y tu pregunta es? ¿Por qué tratar de crear un desconocido si va a lanzarlo a un tipo conocido más tarde? – Lazarus
La pregunta es: ¿Cómo generar una instancia de un tipo desconocido en tiempo de ejecución? No importa por qué o no, solo quiero saber si es posible – haze4real
Eso es fácil, entonces sí, es posible. ¿Es practicable? Probablemente no. ¿No fue razonable pedir un contexto cuando tu ejemplo no tiene sentido? – Lazarus