Good day I am developing an application where I need to show in a DataGriView
the result of a query to know which users have permissions to different documents , when I charge the DataGrid
shows me in screen the permissions of each user as CheckBox
in which I can grant or remove permissions , so I must replace the default values by YES or NO according to the privileges of each user , only when I copy the values already modified in a new DataTable
I duplicate the first row and it does not allow me to save the others, for which I would appreciate if you can support me by telling me how to validate that a row does not repeat within a DataTable
, I attach the developed code.
public void CargarGridUsuarios()
{
try
{
int IdUsuario = 0;
DataTable dtDocumentosUsuarios = new DataTable();
DataTable dtDocumentosUsuarios1 = new DataTable();
DataTable dtResultado = new DataTable();
DataRow drDocumentos = dtDocumentosUsuarios1.NewRow();
IdUsuario = Convert.ToInt32(cmbUsuarios.SelectedValue);
string Codigo = "";
string Documento = "";
string Leer1="";
string Modificar1="";
string Imprimir1="";
string Eliminar1="";
string Leer = "";
string Modificar = "";
string Imprimir = "";
string Eliminar = "";
if (cmbUsuarios.SelectedValue!=null)
{
if (IdUsuario!=0)
{
dtDocumentosUsuarios = objUsuarios.DocumentosUsario(IdUsuario);
if (dtDocumentosUsuarios.Rows.Count!=0)
{
dtDocumentosUsuarios1.Columns.Add("Codigos");
dtDocumentosUsuarios1.Columns.Add("Documetos");
dtDocumentosUsuarios1.Columns.Add("Permiso Leer");
dtDocumentosUsuarios1.Columns.Add("Permiso Modificar");
dtDocumentosUsuarios1.Columns.Add("Permiso Imprimir");
dtDocumentosUsuarios1.Columns.Add("Permiso Eliminar");
foreach (DataRow drDocumentosUsuarios in dtDocumentosUsuarios.Rows)
{
Codigo = Convert.ToString(drDocumentosUsuarios[0]);
Documento = Convert.ToString(drDocumentosUsuarios[1]);
Leer1 = Convert.ToString(drDocumentosUsuarios[2]);
Modificar1 = Convert.ToString(drDocumentosUsuarios[3]);
Imprimir1 = Convert.ToString(drDocumentosUsuarios[4]);
Eliminar1 = Convert.ToString(drDocumentosUsuarios[5]);
if (Leer1 =="True" && Modificar1 == "True" && Imprimir1 == "True" && Eliminar1 == "True")
{
Leer = "SI";
Modificar = "SI";
Imprimir = "SI";
Eliminar = "SI";
}
else
{
Leer = "NO";
Modificar = "NO";
Imprimir = "NO";
Eliminar = "NO";
}
drDocumentos["Codigos"] = Codigo;
drDocumentos["Documetos"] = Documento;
drDocumentos["Permiso Leer"] = Leer;
drDocumentos["Permiso Modificar"] = Modificar;
drDocumentos["Permiso Imprimir"] = Imprimir;
drDocumentos["Permiso Eliminar"] = Eliminar;
dtDocumentosUsuarios1.Rows.Add(drDocumentos);
}
dtResultado = dtDocumentosUsuarios1;
}
}
}
}
catch (Exception ex)
{
ex.ToString();
}
}