473,378 Members | 1,084 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,378 software developers and data experts.

UIPAB / MVC / Model / URL

I have been looking over the UIPAB and how you can use it in ASP.Net.
It seems like, at least from the article that I read, that there really
isn't a Model in this architecture, even though they are saying that
they are implementing MVC. e.g. In the example the view needs to
populate a textfield, and it does so by:
txtMyText.text = MyController.MyText

Basically querying a property of the controller. Is there no Model in
this implementation? Is the Model and Controller rolled into 1?
Also, it looks like the UIPAB uses "Transitions" to move the user
around. So you define the various navigation paths that a user can
have and then execute one of those paths.
Does this mean that all navigation within UIPAB should take place by
means of a post back, as opposed to a hyperlink?
Thanks!

Nov 19 '05 #1
6 1348
There is an article on the UIP block in this months MSDN magazine.
A quick read of it tells me that:

Model = custom business object
Controller=knows how to use the BO
View=Page code behind that knows how to use the Controller.

The goal seems to be to remove all the detailed code from the page code
behind into the controller.
So that a button click event in the page is resposned to with 1 line of
code:
myController.SomeMethod

The idea is to keep the UI ignorant of the model and only interact with the
controller.

The sample article built a small winforms app and then converted it to
ASP.Net with no changes to the code behind events.

HTH
--
Joe Fallon


"cmay" <cm**@walshgroup.com> wrote in message
news:11*********************@o13g2000cwo.googlegro ups.com...
I have been looking over the UIPAB and how you can use it in ASP.Net.
It seems like, at least from the article that I read, that there really
isn't a Model in this architecture, even though they are saying that
they are implementing MVC. e.g. In the example the view needs to
populate a textfield, and it does so by:
txtMyText.text = MyController.MyText

Basically querying a property of the controller. Is there no Model in
this implementation? Is the Model and Controller rolled into 1?
Also, it looks like the UIPAB uses "Transitions" to move the user
around. So you define the various navigation paths that a user can
have and then execute one of those paths.
Does this mean that all navigation within UIPAB should take place by
means of a post back, as opposed to a hyperlink?
Thanks!

Nov 19 '05 #2
Joe,

It was actually that article that raised these questions!
From their article... on form load they call:


this.firstNameLabel.Text = this.BookingController.PassengerFirstName;
This seems to violate the MVC pattern. I would think that at this
point the Model should be getting information like the person name, not
the controller.
Also, all navigation is done like:

this.BookingController.BookTrip();

which makes me wonder if all ASP.NET navigation must be done via post
backs, rather than just a hyperlink pointing to another page. Maybe
that is considered a feature of UIPAB? I dunno.

Nov 19 '05 #3
ASP.Net navigation works both ways.

The post back should be used when you need to interact with the data (or
controls) on the current page *before* you go to the next page.

Use a hyperlink to navigate directly to another page if there is no need for
interaction.

e.g.
You are on a search page, you enter criteria, you click btnSearch - this
should postback so you can read the texbox values before navigating to the
results page.

On the results page you could have a link to take you back to the search
page.
This does not post back. No need to deal with any input.

But the same results page could have a column of buttons saying "Edit".
When the user clicks one of these buttons you should postback so you can
figure out which button was pushed and get the index of the item inthe grid
so you can then get the PK value out of your results collection and pass it
to the next page.

HTH
--
Joe Fallon


"cmay" <cm**@walshgroup.com> wrote in message
news:11**********************@g43g2000cwa.googlegr oups.com...
Joe,

It was actually that article that raised these questions!
From their article... on form load they call:


this.firstNameLabel.Text = this.BookingController.PassengerFirstName;
This seems to violate the MVC pattern. I would think that at this
point the Model should be getting information like the person name, not
the controller.
Also, all navigation is done like:

this.BookingController.BookTrip();

which makes me wonder if all ASP.NET navigation must be done via post
backs, rather than just a hyperlink pointing to another page. Maybe
that is considered a feature of UIPAB? I dunno.

Nov 19 '05 #4
a typo probably???

--
Regards,
Alvin Bruney - ASP.NET MVP

[Shameless Author Plug]
The Microsoft Office Web Components Black Book with .NET
Now available @ www.lulu.com/owc, Amazon.com etc
"cmay" <cm**@walshgroup.com> wrote in message
news:11**********************@g43g2000cwa.googlegr oups.com...
Joe,

It was actually that article that raised these questions!
From their article... on form load they call:


this.firstNameLabel.Text = this.BookingController.PassengerFirstName;
This seems to violate the MVC pattern. I would think that at this
point the Model should be getting information like the person name, not
the controller.
Also, all navigation is done like:

this.BookingController.BookTrip();

which makes me wonder if all ASP.NET navigation must be done via post
backs, rather than just a hyperlink pointing to another page. Maybe
that is considered a feature of UIPAB? I dunno.

Nov 19 '05 #5
>>a typo probably???
What are you referring to?

Nov 19 '05 #6
I know HOW you can do navigation w/ ASP.Net, but when you are using the
UIPAB it looks like you are not supposed to use hyperlinks! It seems
that would violate the transition between views and you would lose the
Context b/c you would be putting everything in the querystring.

Nov 19 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Nikander Bruggeman | last post by:
I keep losing session state when I store UIPAB state in the SessionStateObject. The asp.net session state object itself stores it's state in SQL server, I'm using cookieless session state. This...
0
by: John McDonald | last post by:
I am developing an application to serve a specific use case and want to use the UIPAB in the implementation. When this application is launched there is contextual information identified by a key....
0
by: francarv | last post by:
I have an ASP.NET application based on UIPAB 2 runing in my dev box (WinXP) but when I deploy it to Win2K server the app stops working. The error I get is "The page cannot be displayed". any...
1
by: Jan | last post by:
Hi We are developing a trading application in C# using the UIPAB. In this application it should be possible to set up different workspaces with a number of windows. The user should be able to save...
0
by: Harry Simpson | last post by:
I've just started a workspace at GotDotNet which has a very simple asp.net app written in VB.NET. It demonstrates navigation between pages using the UIPAB. Come on over to my new workspace for...
0
by: Furqan | last post by:
hi, there i m developing an application in asp.net in which i want to use microsoft's User Interfcae Process Application Block (MVC implementation ). the problem that i mfacing is that i have...
0
by: n.s.tho | last post by:
I've developed a sample web app using UIPAB v2.0 on my dev machine (XP) but when i deploy it to my test server (win2k3 server) i just get a "page cannot be displayed" error when I try to initiate...
0
by: Mike Gaab | last post by:
I really like the User Interface Process AB. I used MVC quite a bit with good success using LAMP. I've just started using version 2.0 of the UIPAB on .net 2.0. There have been a few items that I...
1
menayah
by: menayah | last post by:
Hi all, I'm a newbie in MVC and UIPAB. I need to ask some questions. 1. Can we do UIPAB concept over VB.Net web application? 2. I have searched the net and all what I have found is a C # UIPAB...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.