Código fuente del Fútbol Chapa

Por fin me decido a dar el paso… Para los que no conozcáis la historia este año hicimos una gira de sesiones técnicas de Visual Studio 2005 por varias ciudades en España. Fue divertido porque intentamos que no fuera un evento de marketing sino algo muy práctico donde se pudiera aprender a desarrollar una aplicación real. En cada sesión desarrollábamos una pieza de una aplicación de ejemplo, todo gestionado con Team System y utilizando casi todas las tecnologías de desarrollo: SQL Server 2005, ADO.NET, Windows Forms, ASP.NET, Compact Framework, Servicios Web…

La temática de la gira fue el mundial de fútbol así que la aplicación que elegimos para desarrollar fue un juego de Fútbol Chapa, aquí tenéis una captura:

Hay que reconocer que tuvo mérito usar todas estas tecnologías con un juego y no con una aplicación de gestión tradicional (gracias a Luis, Aurelio y al resto que lo hicieron posible!). Desde entonces muchos os habéis interesado por la aplicación, sobre todo para ver en detalle el código fuente que hicimos deprisa y corriendo durante el evento. Llevo todo este tiempo intentando paquetizarla y colgarla en la web oficial del lanzamiento, pero mañana me voy de vacaciones y sigo sin sacar ese rato para hacerlo… En resumen, aquí tenéis todo el código fuente en bruto, sin paquete de instalación. La solución está compuesta por 8 proyectos:

  • AccesoDatos: Capa de acceso a datos, con las entidades de la aplicación y los TableAdapters de acceso.
  • CapaNegocio: Lógica de negocio, con la física de las chapas, la lógica del juego, la seguridad y la transaccionalidad.
  • FutbolChapaSql: Proyecto de SQL Server 2005 con un procedimiento almacenado en .NET que calcula las distancias recorridas por los jugadores.
  • FutbolChapaWin: Aplicación WinForms de mantenimiento de jugadores e informes.
  • FutbolChapaWinControl: Tablero de juego en GDI+ incrustado en un control, para poder reaprovecharlo en otra aplicación o en una página web.
  • FutbolChapaWeb: Frontal web con webparts que muestran información de las ligas, los jugadores y un informe. Incluye un proveedor de seguridad Membership y una página web donde jugar online al Fútbol Chapa.
  • FutbolChapaWS: Fachada de servicios web de la capa de negocio, para acceder desde otros sistemas o desde los clientes ricos.
  • JuegoWin: Sencilla aplicación Windows Forms que hospeda el control de tablero para echar una partidita.

Si queréis poner a funcionar este código es necesario efectuar algunas operaciones de instalación manualmente (lo siento, no tendremos instalador de momento):

  • Adjuntar la base de datos (carpeta DB) a una instancia de SQL Server 2005.
  • Configurar la seguridad de la base de datos. Por defecto utiliza autenticación integrada así que es necesario añadir el usuario ASPNET (WinXP) o NETWORK SERVICE (Win 2003) con permiso lectura / escritura en la base de datos adjuntada. Es posible también crear un usuario de SQL específico y cambiar la cadena de conexión en el archivo de configuración.
  • Crear dos directorios virtuales para el frontal web y los servicios web (carpetas FutbolChapaWeb y FutbolChapaWS).
  • La capa de negocio utiliza transacciones distribuidas, por lo que es necesario tener arrancado el DTC (servicio Distributed Transaction Coordinator)
  • Habilitar el CLR en SQL Server (sólo para el proyecto FutbolChapaSql). Más info aquí.

No me suelen gustar los disclaimers pero esta vez sí tengo que hacer uno: si queréis una aplicación didáctica, soportada, con instalación automática y tutoriales de su implementación os recomiendo MSDN Video. Tenéis la versión 2003 en el enlace y estamos trabajando en una versión 2005 que colgaremos en el mismo sitio.

Si aún así quieres seguir adelante, aquí tienes el código fuente completo del Fútbol Chapa.

Ea, a echar unas partiditas!

Comments

  • Anonymous
    August 09, 2006
    David Carmona ha anunciado en su blog la publicación del código de fútbol chapa, lo ha publicado sin...

  • Anonymous
    August 10, 2006
    Esas aplicaciones con código de Microsoft son interesantes, sobre todo, que sean lo más profesional posible.

    Interesa por ejemplo una aplicación que sea exigente en cuanto a rendimiento y así se vería la forma de trabajar con casos así, por ej, tratar en un formulario winforms con tablas con millones de registros y cosas así.

    Saludos. gracias.

  • Anonymous
    August 12, 2006
    Hola David,

    No me funcionan los web services (FutbolChapaWS). Aparentemente es un problema de seguridad cuando se accede al GAC. He seguido las instrucciones de este link technet pero no he conseguido solucionarlo.

    http://support.microsoft.com/kb/811320/en-us

    Las páguinas ASP.Net normales me funcionan correctamente. Tengo instalado DNN y Community Server funcionando sin problemas. Ya no se me ocurre que hacer salvo reinstalar todo (incl. Visual Studio) desde el principio.

    Gracias y Saludos.

  • Anonymous
    August 14, 2006
    El lanzamiento mundial de Visual Studio 2005 constaba de la presentación de las bondades de la

  • Anonymous
    August 17, 2006
    Hola David,

    Ya he conseguido hacer funcionar los Web Services en mi máquina, pero la verdad que he tenido que tocar tantas cosas que no se lo que ha arreglado el problema. Bueno espero que instalarlo en otro ordenador para poser jugar con mi hermano no sea tan costoso.

    Gracias de todas formas, saludos.

  • Anonymous
    September 01, 2006
    David Carmona ha anunciado en su blog la publicación del código de fútbol chapa, lo ha publicado sin

  • Anonymous
    September 12, 2006
    Curioso el error de la GAC, no recuerdo que ningún ensamblado del proyecto estuviera en la GAC. Si consigues reproducirlo de nuevo nos cuentas :-)

  • Anonymous
    September 29, 2006
    Sinceramente, no creo que en una gira hayas desarrollado una aplicacion de semajante envergadura durante la gira, y si enrealidad lo desarrollastes esas no fueron vacaciones, te felicito por tu programita.

  • Anonymous
    November 16, 2006
    Hola he implementado este codigo fuente que en la reunion me parecio genial, pero no logro hacerlo correr. Si ejecuto la web futbolchapaweb me sale el siguiente error: No se pudo tener acceso a la metabase de IIS. Error de código fuente: Se ha generado una excepción no controlada durante la ejecución de la solicitud Web actual. La información sobre el origen y la ubicación de la excepción pueden identificarse utilizando la excepción del seguimiento de la pila siguiente. Si desde el VB2005 ejecuto la aplicacion, accedo al formulario de inicio y al crear un equipo o al hacer login da el error: no se controló TargetInvocationException ¿Qué puedo hacer para solucionarlo? Gracias

  • Anonymous
    March 18, 2007
    keria acerme un ekipo de futbol chapa

  • Anonymous
    March 18, 2007
    keria acerme un ekipo de futbol chapa

  • Anonymous
    March 27, 2007
    Hola tengo es el mismo problema que el compa rubenmr cuando quiero crear un equipo me manda la excepcion : no se controló TargetInvocationException y la verdad no tengo idea de como solucionarlo cualquier ayuda la agradeceria mucho. gracias

  • Anonymous
    May 19, 2007
    no me gusta vaa esta bien no lo contrario , como se diceeee mal muy mal

  • Anonymous
    May 20, 2007
    The comment has been removed

  • Anonymous
    September 17, 2008
    Hola,muy bueno el codigo,pero una pregunta,me podriais ayudar a configurarlo (ami me gustaria un juego tipo World Cap pero sin ser online).Os paso mi correo para que me ayudeis a configarlo: poliche_boliche@hotmail.com Gracias Polmp

  • Anonymous
    May 29, 2009
    PingBack from http://paidsurveyshub.info/story.php?title=net-con-tropezones-c-digo-fuente-del-f-tbol-chapa

  • Anonymous
    May 14, 2010
    Hola,me gustaria hacer un servidor de chapas pero necesito ayuda.Alguien me podria ayudar?¿ Mi email es: poliche_boliche@hotmail.com Si alguien es tan amable le podria dar los datos del juego. Saludos y gracias, Polmp