Foro Oficial de C#

Nuevo post!! espero les sirva:

Cómo acelerar el emulador de Android y no morir en el intento

Si son desarrolladores de Apps seguramente han tenido que probar haciendo Apps para diferentes plataformas,Android entre ellas.

El emulador de Android suele ser un problema, no es que sea lento es que es lo más lento que un producto de virtualización moderno pueda ser, esto nos complica muchisimo la tarea de desarrollo pero podemos tomar medidas al respecto. Y de esto tratará este post.

Algo que complica el tipo de medidas que debemos tomar es si ya utilizamos una hyper visor para virtualización, puede que no lo sepas pero si desarrollas Apps para Windows Phone ya tienes un hyper visor funcionando, en este caso será Hyper-V. Revisaremos también como lidiar con ello.

Si tienes instalado Hyper-V las opciones que veremos en este post requerirán que lo deshabilites así que ese es nuestro primer punto a tratar.

Revisaremos como hacerlo desde Visual Studio con Xamarin instalado,pero cualquier de los pasos se pueden hacer directamente desde el ADK de Google, que al final son los componentes que abre Visual Studio.

Artículo completo:

Cómo acelerar el emulador de Android y no morir en el intento
 
@JuanKRuiz No se puede utilizar genymotion con xamarin? es muy completo ese emulador y es 1000 mil veces mas rapido.

Alguien tiene un buen tutorial donde expliquen con plastilina Generics?
 
@JuanKRuiz No se puede utilizar genymotion con xamarin? es muy completo ese emulador y es 1000 mil veces mas rapido.

Alguien tiene un buen tutorial donde expliquen con plastilina Generics?
A genymotion le pasa exactamente lo mismo, hay que hacer el mismo proceso para que ande... una vez anda la velocidad es casí la misma que con el emulador del ADK.

Respecto a generics, es mejor que compres un buen libro y de una vez cubrir vacios.
 
Hola,artpiculo más reciente en mi blog:

Link al Artículo Completo:

Apps, Binding, INotifyPropertyChanged y BindableBase | XAML | C#

Como recordarán en versiones anteriores de Visual Studio se solia incluir en los templates la clase BindableBase . Esta clase nos ayudaba a agilizar la creación de Modelos que hicieran Binding con la UI. Sin embargo esta clase desaparecio en versiones posteriores y si, a muchos nos hace falta.

En este artículo veremos como crearla, y como es mi costumbre lo haremos paso a paso para aprender.

BINDING
Al hacer Binding abrimos camino para que la UI tome los valores de nuestra clase modelo, y esta "copia" de datos se hace de manera automática por el runtime de XAML.

Hay varias formas de hacer Binding:

  1. Única vez: si asignamos el Datacontext, al arrancar la UI hace Binding con el modelo, pero ningún cambio posterior se efectua sobre la UI.
  2. Notificaciones: al arrancar la UI hace Binding con el modelo, pero si se cambian los datos del modelo la UI actualiza automáticamente los valores en el control. Modificando las propiedades del
    Binding es posible hacerlo funcionar de manera similar a única vez.
  3. Bidireccional: al arrancar la UI hace Binding con el modelo, si se cambian los datos del modelo la UI actualiza automáticamente los valores en el control y si se hacen cambios en el control el runtime automáticamente actualiza el modelo
He creado este ejemplo con el que trabajaremos todo este artículo. Esta hecho como Universal App para Windows Phone y Windows Store.

img-0022-png.212775
 
Saludos,
Estoy trabajando en un menú tipo acordeón con AjaxControlToolkit, pretendo alimentar ese menú dinamicamente desde una base de datos, EJ tabla menuPadre, tabla itemMenu, logro que me muestre los padre pero no me muestra los hijo.

Agradecería su ayuda, este es el código que tengo

HTML:
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
                </asp:ToolkitScriptManager>
               
                  <asp:Accordion ID="Accordion1" runat="server"
                  Width="150px" FadeTransitions="true"
                  CssClass="accordion" 
                  HeaderCssClass="accordionHeader" 
                  HeaderSelectedCssClass="accordionHeaderSelected" 
                  ContentCssClass="accordionContent"
                  
                  SelectedIndex="0"
                  AutoSize="None"
                  TransitionDuration="250"
                  FramesPerSecond="40"
                  RequireOpenedPane="false"
                  SuppressHeaderPostbacks="true">

                      <HeaderTemplate> <b> <%#DataBinder.Eval( Container.DataItem, "TITULOMODUL" ) %></b> </HeaderTemplate>
                      <ContentTemplate>
                          <asp:HiddenField ID="hdnidModul" runat="server" Value=<%#DataBinder.Eval(Container.DataItem,"IDMODUL") %> />
                          <asp:Label ID="lblDescripcion" runat="server" Text=<%#DataBinder.Eval(Container.DataItem,"IDMODUL") %> ></asp:Label>                         
                      </ContentTemplate>               
                </asp:Accordion>

COD CS

PHP:
private void cargarMenu(){
            TipoUser tipoUser = new TipoUser();
            tipoUser.IdTipoUser = Utils.utils.ToInt(this.Session["tipoUsuario"].ToString());
            DataSet dsMenuPadre = null;
            dsMenuPadre = MasterPage.getMenuPadre();
           
            Accordion1.DataSource = dsMenuPadre.Tables[0].DefaultView;
            Accordion1.DataBind();
                       
        }
        protected void Accordion1_ItemDataBound(object sender, AjaxControlToolkit.AccordionItemEventArgs e) {
            try{
                Label url = null;
                Permisos permisos = new Permisos();
                if (e.ItemType == AjaxControlToolkit.AccordionItemType.Content){

                    url = ((Label)e.AccordionItem.FindControl("lblDescripcion"));

                    permisos.Modulo.IdModul = Utils.utils.ToInt(e.AccordionItem.FindControl("hdnidModul"));

                    DataSet dsMenuItem = MasterPage.getMenuItem(permisos);
                    //dsMenuItem.Tables.Add(oTable1);

                    url.Text = "<ul style='margin:7px; padding:7px;'>";
                    foreach (int i in dsMenuItem.Tables[0].Rows){
                        url.Text += "<li class='azul'>" + dsMenuItem.Tables[0].Rows[i]["TITULOITEM"].ToString().Trim() + "</li>";
                    }
                    url.Text += "</ul>";
                }
            }
            catch (Exception){
                throw;
            }
        }
 
tengo una pregunta:

resulta que en el sena varios grupos de programadores queremos hacernos con una licencia de visual studio para comenzar a realizar programas propios ya que todo lo que desarrollemos en el sena, pertenece al sena.

la pregunta es: se puede adquirir una licencia para varias personas? o hay alguna forma de que hagan descuento (y muy bueno) si somos muchos? es que es algo costosa ($2.309.000 la profesional).

o que alternativas nos pueden sugerir?

muchas gracias!
 
tengo una pregunta:

resulta que en el sena varios grupos de programadores queremos hacernos con una licencia de visual studio para comenzar a realizar programas propios ya que todo lo que desarrollemos en el sena, pertenece al sena.

la pregunta es: se puede adquirir una licencia para varias personas? o hay alguna forma de que hagan descuento (y muy bueno) si somos muchos? es que es algo costosa ($2.309.000 la profesional).

o que alternativas nos pueden sugerir?

muchas gracias!
Si usted es aprendiz activo del SENA, averigüe aquí: https://www.dreamspark.com/Institution/Subscription.aspx
Hay un convenio con Microsoft que le permite descargar Visual Studio con clave para que lo active; puede descargar la versión Professional 2013 o cualquier versión anterior disponible, y también puede descargar otros productos.
 
  • Me gusta
Reacciones: omegathekiller
gracias por sus respuestas.

la versión gratuita no tiene algunas herramientas que utilizamos.
acá en el sena nos dicen que con esas versiones para estudiantes no se pueden vender los programas que hagamos. solo son para aprender.
 
Tal cual señores, pero:

1. dream spark es para aprender, por ende no se puede comercializar nada
2. si necesitan vender entonces ya no necesitan dream spark, ya ustedes son un emprendimiento y Microsoft tiene su programa para apoyar el emprendimiento o startup: BizSpark.

Si estan en Colombia contacten a : Campus AppsLab appslab@microsoft.com piden información de BizSpark y allí los asesorarán.

Acá les dejo este video que hice y que habla del tema:

 
  • Me gusta
Reacciones: omegathekiller
Tengo unas pequeñas dudas a ver si alguien puede ayudarme con ellas:

1) hay alguna forma de hacer vistas(como las de sql) en entityframework code firts, es decir que yo pueda acceder desde el contexto a esa vista por ejemplo:

Tengo la clase persona que tiene nombre, apellido, email, dirección pero quiero crear una vista con solo email, direccion, lo que deseo es que desde el contexto(DbContext) pueda accesar a ella diciéndole Contexto.VistaPersona, se puede hacer esto?

Se que puedo acceder ahora desde ef 6 a procedimientos almacenados a través del contexto, pero quería saber si hay alguna manera para tener estas vistas en c# matriculadas al contexto.

2) Hay alguna forma de optima para no cargar las propiedades de navegacion? es decir que yo hay una consulta como por ejemplo:

Un autor tiene muchos libros, un libro tiene un genero y un genero esta en muchos libros
Código:
Clase Autor
{
string Nombre;
Virtual List<Libros> ListaLibros
}

Clase Libros
{
  string  Nombre;

  int   AutorId;
  Virtual Autor Autor;

  int GeneroId
  virtual Genero Genero;

}

Clase Genero
{
    string Nombre
    virtual List<Libros> ListaLibros;
}
}

El gran problema con ello es que cuando lo estoy utilizando en una webapi tengo que hacer maravillas(crear vistas sin propiedades de navegación) para que no me salga el error de ciclo infinito.

Para resumir ya no puedo hacer Contexto.Autor.ToList(); y retornarlo en el método sino que tengo que hacer esa consulta y ademas hacerle un select para por meterla en la nueva vista.

Espero que me hayan entendido XD

Gracias.
 
SALUDOS...
si me pudieran ayudar en como hacer un menu dimanico desde una dase de datos sql, les agradeceria...
gracias