Bruno C. de Paula
Exercício
Academia
2º Semestre 2010 > PUCPR > BSI
Comandos SQL Padrão do
TableAdapter
Select:
Método
Método
Insert:
Método
Update:
Método
Delete:
Método
25/07/09
GetData;
Fill;
Insert;
Update;
Delete.
2
Objetivo do Exercício
Criar uma interface que permita o
acompanhamento de um programa
de exercícios para um conjunto de
alunos de uma academia.
25/07/09
3
Especificação
Cada aluno tem um objetivo
diferente: emagrecimento, saúde,
etc;
25/07/09
4
Especificação
Cada aluno pode participar apenas de
uma modalidade: Pilates, Corrida,
Musculação, etc;
25/07/09
5
Especificação
Alunos possuem um peso e uma
altura, com os quais é feito o cálculo
de seu IMC;
É guardado um histórico do
usuário.
A qualquer momento um aluno pode
deixar de ser ativo na academia;
25/07/09
6
Sugestão de modelagem
25/07/09
7
Sugestão de modelagem
TbAtletas
25/07/09
8
Sugestão de modelagem
TbAcompanhamento
25/07/09
9
Sugestão de modelagem
TbModalidades
25/07/09
10
Sugestão de modelagem
TbObjetivos
25/07/09
11
Sugestão para a organização das
páginas
NovoObjetivo.aspx:
Criação de um novo objetivo;
Usar FormView:
DefaultMode=Insert;
Dica: Não esqueça da validação de
obrigatório
(RequiredFieldValidator);
E do Label colocado da maneira
correta (AssociatedControlId).
25/07/09
12
Sugestão para a organização das
páginas
ListagemObjetivos.aspx:
Listagem dos objetivos;
Usar Repeater;
<%# Eval(“campo”) %>
25/07/09
13
Sugestão para organização das
páginas
EditarObjetivo.aspx:
Listagem dos objetivos através de
uma ListBox ou DropDownList
(AutoPostBack=True);
Edição dos objetivos através de
um FormView;
DefaultMode=Edit
Dica: não esqueça de criar dois
ObjectDataSource: um para a
lista e um para o FormView.
25/07/09
14
O ObjectDataSource
Pode receber parâmetros
EditarObjetivo.aspx
Atualizando a 1ª lista
05/11/2015
16
protected void FormView1_ItemUpdated(object sender, FormViewUpdat
{
DropDownList1.DataBind();
}
Sugestão para organização das
páginas
ExcluirObjetivo.aspx:
Listagem dos objetivos através de
links em um Repeater com um
LinkButton dentro;
CommandName=Delete;
CommandArgument=<%#
Eval(“id”) %>
Exclusão do objetivo após
confirmação via JavaScript, usar
propriedade OnClientClick.
25/07/09
17
ExcluirObjetivo.aspx
Confirmar exclusão
<script type="text/javascript">
var confirmarExclusao = function() {
return confirm("Você tem certeza?");
}
</script>
05/11/2015
18
ExcluirObjetivo.aspx
Código para exclusão
05/11/2015
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
ObjectDataSource1.DeleteParameters["Original_id"].DefaultValue
= e.CommandArgument.ToString();
ObjectDataSource1.Delete();
}
}
19
Sugestão para organização das
páginas
 Criar as páginas seguintes a partir deste modelo:
 NovaModalidade.aspx,
ListagemModalidades.aspx,
EditarModalidade.aspx e
ExcluirModalidade.aspx
 NovoAtleta.aspx, ListagemAtletas.aspx,
EditarAtleta.aspx e ExcluirAtleta.aspx
 Acompanhamento.aspx – Listar para cada
aluno:
O peso, altura e imc atual;
Cada mudança de peso e altura e o seu
IMC no momento.
25/07/09
20
Download

em anexo a especificação. - Bruno Campagnolo de Paula