Creación de propiedades públicas en soluciones webPart Sandboxed
-
09-12-2019 - |
Pregunta
Estoy tratando de abrir una solución agrícola a una caja de arena, y no puedo descubrir cómo puerto de esta pieza de código:
[ToolboxItem(false)]
public partial class vClockPartSB : System.Web.UI.WebControls.WebParts.WebPart
{
[Personalizable(PersonalizationScope.User)]
public Collection<String> ClockTimeZones { get; set; }
[Personalizable(PersonalizationScope.User)]
public int NumberOfClocks { get; set; }
[Personalizable(PersonalizationScope.User)]
public string DdlMain { get; set; }
[Personalizable(PersonalizationScope.User)]
public string DdlSubOne { get; set; }
[Personalizable(PersonalizationScope.User)]
public string DdlSubTwo { get; set; }
[Personalizable(PersonalizationScope.User)]
public string DdlSubThree { get; set; }
[Personalizable(PersonalizationScope.User)]
public string DdlSubFour { get; set; }
protected override void OnInit(EventArgs e)
{
ClockTimeZones = new Collection<string>();
base.OnInit(e);
InitializeControl();
}
Obtengo el siguiente error:
Error de la parte web: la excepción no manejada fue lanzada por el código de arena Método de ejecución de Wrapper en el dominio de la aplicación parcial de confianza: parte web Propiedad 'Clocktimezones' usa el tipo no compatible (System.Collections.ObjectModel.Collection`1 [[System.String, MScorlib, Versión= 2.0.0.0, Cultura= Neutral, Public LeakeToken= B77A5C561934E089]]), y no se puede ejecutar como una parte web de código de arena.
¿Cómo debo abordarlo?
Solución
Me sentiría tentado solo para almacenar una cadena, en lugar de una colección de cadenas, y realizar mi propia serialización / deserialización.Probablemente use la función STRING.SPLIT () y un delimitador adecuado.
Otros consejos
El espacio de nombres de System.Collections.ObjectModel
no está permitido en la caja de arena.
Para su escenario, ¿podría usar el lista
Aparentemente, solo los siguientes tipos son compatibles con las propiedades de la parte web en la solución de Sandbox:
- cadena
- bool
- enum
- corto
- int
- guid
- URI
- byte
- char
- Long
- flotar
- decimal
- doble
Aquí hay un enlace a Alan Dahl's Artículo de blog donde el blog de Alan Dahls hizo la búsqueda.