Creo que no se puede adjuntar nada en este foro, tengo un modulo echo de una bandeja de correo en C#, te pego el código para que te hagas una idea. las consultas son con LinQ.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DotNetNuke;
using DotNetNuke.Entities.Users;
namespace bandejaCorreo
{
public partial class BandejaCorreo : DotNetNuke.Entities.Modules.PortalModuleBase
{
protected void Page_Load(object sender, EventArgs e)
{
int IdUsuario = UserInfo.UserID;
using (BandejaDataContext db = new BandejaDataContext())
{
var consulta =
from U in db.CambioCorreo
where U.IdUsuario == IdUsuario
select new
{
idCorreo = U.IdCorreo,
Asunto = U.Asunto,
Cuerpo = U.Cuerpo,
Leido = U.Leido,
Mandado = U.userMandado,
Fecha = U.fechaEnvio
};
rptBandeja.DataSource = consulta;
rptBandeja.DataBind();
}
}
protected void responder_Command(object sender, CommandEventArgs e)
{
int id = int.Parse(e.CommandArgument.ToString());
using (BandejaDataContext bd = new BandejaDataContext())
{
var ficha =
from F in bd.CambioCorreo
where F.IdCorreo == id
select F;
foreach (var C in ficha)
{
Response.Redirect("http://www.eligetucambio.com/Correo.aspx?id=" + C.IdUserMandado);
}
}
}
protected void ver_Command(object sender, CommandEventArgs e)
{
mvBandeja.SetActiveView(vwcorreo);
int id = int.Parse(e.CommandArgument.ToString());
using (BandejaDataContext bd = new BandejaDataContext())
{
var ficha =
from F in bd.CambioCorreo
where F.IdCorreo == id
select F;
CambioCorreo Cc = bd.CambioCorreo.Single(c => c.IdCorreo == id);
Cc.Leido = true;
bd.SubmitChanges();
foreach (var Fi in ficha)
{
lblFecha.Text = Fi.fechaEnvio.ToString();
lblMailDe.Text = Fi.Users.Username;
lblAsunto.Text = Fi.Asunto;
lblDescripcion.Text = Fi.Cuerpo;
}
}
}
protected void borrar_Command(object sender, CommandEventArgs e)
{
try
{
int IdUsuario = UserInfo.UserID;
int id = int.Parse(e.CommandArgument.ToString());
using (BandejaDataContext bd = new BandejaDataContext())
{
var ficha =
from F in bd.CambioCorreo
where F.IdCorreo == id
select F;
CambioCorreo Cc = bd.CambioCorreo.Single(c => c.IdCorreo == id);
bd.CambioCorreo.DeleteOnSubmit(Cc);
bd.SubmitChanges();
}
using (BandejaDataContext db = new BandejaDataContext())
{
var consulta =
from U in db.CambioCorreo
where U.IdUsuario == IdUsuario
select new
{
idCorreo = U.IdCorreo,
Asunto = U.Asunto,
Cuerpo = U.Cuerpo,
Leido = U.Leido,
Mandado = U.Users.Username,
Fecha = U.fechaEnvio
};
rptBandeja.DataSource = consulta;
rptBandeja.DataBind();
}
}
catch { }
}
protected void Button1_Click(object sender, EventArgs e)
{
mvBandeja.SetActiveView(vwbandeja);
}
}
}
espero que te sirva.
Un saludo