2009-07-29 13 views
5

Zdaję sobie sprawę, że zadając to pytanie, mogłem rozpocząć apokalipsę, ale mój kolega używa wielu wbudowanych kodowań na swoich stronach aspx, gdzie wolę używać z kodem.ASP.NET - Inline vs. Code-Behind

Czy jest tu dobra i zła droga?

+0

Dupe http : //stackoverflow.com/questions/702343/ondatabinding-vs-inline-pros-cons-and-overhead –

+0

Tak, Kelsey to wskazał. Chociaż nie do końca tak, szukam właściwego sposobu robienia rzeczy, głównie w przypadku projektu, nad którym wkrótce zaczniemy pracę. – LiamGu

Odpowiedz

5

Nie, chyba że standard kodowania mówi inaczej.

Kod IMO pomaga rozdzielić wątpliwości, więc wolę to, ale czasami wystarczy tylko zająć się jednym plikiem.

5

Z tyłu kodu jest bardziej tradycyjne i logiczne miejsce. Jeśli to działa, działa, ale nie mogę znieść tego w aspx.

+1

Wiem, co masz na myśli, wbudowany w mnie krzyk Classic ASP. Jedynym problemem z używaniem kodu, który mam, jest to, że nie mogę również dziedziczyć innej strony. Przynajmniej nie sądzę. Podczas gdy moi koledzy argumentują, mogą dziedziczyć stronę i używać kodu, który rozwiązuje ten problem. Ta debata została rozpoczęta dzięki temu problemowi. – LiamGu

+0

Myślę, że asp.net MVC w pewnym stopniu powraca do inlinowania. Historia się powtarza. – shahkalpesh

1

Zrobiłem dokładnie posta jakiś czas temu:

OnDataBinding vs Inline: pros, cons and overhead

Wolę kod tyłu. Zwykle mam obszar #region dla wszystkich rzeczy związanych z wiązaniem danych. Pozwala to osobom znającym HTML/CSS na poprawianie kodu HTML, a wszystko, co trzeba wiedzieć, to podstawowe elementy sterujące, które można wykorzystać, oraz zdefiniowanie zdarzenia OnDataBinding w definicji kontrolki. Mogą przenosić różne rzeczy i robić cokolwiek, i nie mają wiedzy na temat tego, czego potrzeba, aby uzyskać dane w tej bazie danych, ponieważ może nie być tak proste, jak tylko podstawowe "Eval (" coś ") ;.

+0

Ah Nie widziałem tego. Przepraszamy za skuteczny podwójny wpis. – LiamGu

+0

Wyszukiwanie nie zawsze powoduje duplikaty, robiłem to również w przeszłości;) – Kelsey

0

Z żadnym z nich nie ma żadnego błędu.

Możesz napisać kod w linii & część z nich powinna być napisana z tyłu kodu. To nie może być absolutne. Zależy od tego, jak czytelny/możliwy do utrzymania staje się, kiedy piszesz po drugiej stronie.

EDYCJA: Jak już powiedziano, napisz kod dla człowieka & przypadkowo dla kompilatora.

0

Zwykle używam kodu źródłowego, ponieważ jest to jedyny sposób na WPF i staram się pozostać niezmienionym i wydaje się bardziej naturalny. Ale to subiektywne.

1

Cóż, istnieje kod wbudowany, a następnie kod wbudowany. Jeśli masz blok skryptu na górze dla ciebie page_load, to jest w porządku. Ale jeśli mieszkasz wiele żądań pszczół (<% %>) przy użyciu znaczników, w końcu zaczniesz mieć problemy, gdy te użądlenia pszczół nie będą działać tak, jak byś chciał z innymi kontrolkami serwera.

1

Osobiście wolę kompilować błędy od błędów wykonawczych, więc umieszczam całą swoją logikę w tyłach kodu.

Czasami, gdy potrzebuję wartości, aby pokazać się na stronie, wstawię <% = SomeValue%>, ale nawet wtedy wolę stworzyć etykietę i ustawić ją.

1

Chcę się upewnić, rozumiem pytanie - o in-line, masz na myśli fragmenty jak

<a><% some.asp.net.code %></a> 

czy masz na myśli jeden vs. dwa pliki dla każdej strony:

page.aspx 
page.aspx.cs 

?

bo nie jestem fanem tego, co nazywam „osadzone” kod w pierwszym przykładzie, ale ja preferuję kodu i znaczników w tym samym pliku z < script runat = „server”>

+0

Kod wewnętrzny do mnie to zarówno