BC30002: Type ‘System.Data.Linq.Mapping.DatabaseAttribute’ is not defined.

Si estás utilizando LINQ en tu aplicación de asp.net y te sale este error:

BC30002: Type 'System.Data.Linq.Mapping.DatabaseAttribute' is not defined.

Es probable que no hayas hecho referencia del assembly en el archivo web.config.
Entre el tag assemblies y /assemblies de tu archivo web.config coloca lo siguiente:

<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089">

¡Suerte!

Cómo encontrar las dimensiones de una imagen subida mediante FileUpload

Si cuentas con un control como este:

<asp:fileupload id="Imagen" runat="server">

Mediante el cual pretendes recibir una imagen, y quieres validar el ancho y alto de ésta, haz lo siguiente en tu código de servidor:

Dim LaImagen As New System.Drawing.Bitmap(Imagen.PostedFile.InputStream)
If LaImagen.Width <> 680 Or LaImagen.Height <> 300 Then
'Pon aquí­ tu código correspondiente
End If

En el ejemplo anterior estamos diciendo “Si la imagen no mide de ancho 680 pixeles o no mide de alto 300 pixeles, entonces…”.

Esto es útil para combinarlo con un “CustomValidator” y validar el tamaño de la imagen que estás recibiendo.

Cómo encontrar la extensión de un archivo subido mediante FileUpload

Si estás usando un control como este:

<asp:fileupload id="Imagen" runat="server">

Y necesitas conocer su extensión para realizar alguna validación, haz lo siguiente en tu código de servidor:

If System.IO.Path.GetExtension(Imagen.FileName).ToLower <> ".jpg" then
   'Pon aquí el código correspondiente
End If

En el ejemplo anterior estamos diciendo “Si la extensión del archivo NO es igual a “.jpg”, entonces…”.

Esto es útil combinándolo con un “CustomValidator” para revisar que solamente están subiendo imágenes, por ejemplo.

Cómo obtener el UserId del usuario logueado

Para obtener el UserID del usuario actualmente logueado, utiliza el siguiente código:

Dim UsuarioLogueado As MembershipUser = Membership.GetUser()
Dim ElGUID As Guid = UsuarioLogueado.ProviderUserKey
'Si lo necesitas como string utiliza ElGUID.ToString

En el ejemplo el UserId queda almacenado en la variable ElGUID que es de tipo Guid (Globally unique identifier).