+134
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
public static DataSet GetSomeDataSet()
{
DataSet ds = null;
object locker = new object();
lock (locker)
{
if (ds == null)
{
// тут инициализация ds
return ds;
}
else return ds;
}
}
Метод из работающей проги. Возпроизвёл по памяти, но суть именно такая.
Насколько понимаю, человек хотел результаты работы метода кэшировать в локальную переменную.
Да ещё и lock на локальную переменную, который никогда не используется.
Ordos,
19 Июня 2012
−850
- 1
-- Таблица в БД имеет колонку Visible, при этом значение 0 означает "Видим", а 1 - "Не видим"
Ordos,
04 Мая 2011
+139
- 1
Response.Write("<" + '/'.ToString() + "script>");
Даже не знаю, кому и зачем это понадобилось...
Ordos,
24 Февраля 2011
+94.5
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
/// Из aspx файла
//<asp:Repeater ID="Repeater1" runat="server">
// <HeaderTemplate>
// <table width="100%" cellspacing="5">
// </HeaderTemplate>
// <ItemTemplate>
// <tr>
// <td>
// ...
// </td>
// <asp:Label runat="server" Visible='<%# DataBinder.Eval(Container.DataItem, "visibleCol2") %>'>
// <td>
// ...
// </td>
// </asp:Label>
// <asp:Label ID="LCol3" runat="server" Visible='<%# DataBinder.Eval(Container.DataItem, "visibleCol3") %>'>
// <td>
// ...
// </td>
// </asp:Label>
// </tr>
// </ItemTemplate>
// <FooterTemplate>
// </table>
// </FooterTemplate>
//</asp:Repeater>
// Из cs файла
DataTable dtres = // получаем товары
if (dtres != null && dtres.Rows.Count > 0)
{
DataTable dt = new DataTable();
/*...*/
for (int i=0;i<dtres.Rows.Count;)
{
DataRow dr=dtres.Rows[i];
/*...*/
int col2Index = i + 1;
if (col2Index < dtres.Rows.Count)
{
/*...*/
i++;
int col3Index = i + 1;
if (col3Index < dtres.Rows.Count)
{
/*...*/
i++;
}
else { /*...*/ }
}
else { /*...*/ }
dt.Rows.Add(newRow);
i++;
}
/*...*/
}
Человеку нужно было сделать товары в сетке 3x6.
От того что он сделал у меня пропал дар речи. (Чтобы тут очень много кода не бы большую (не нужную для понимания) часть заменил на "...")
Вобщем, в двух словах, он поместил вторую и третью ячейки таблицы в серверные контролы (причем в Label), а в коде берёт по три товара и засовывает в один RepeaterItem, ну а если количество товаров не делится нацело на три, то в последний RepeaterItem засовываются пустые данные, а Label делается невидимым.
Как-то так.
И самое главное, я не знаю, как человеку объяснить, что так нехорошо делать, т.к он главный программист...
Ordos,
27 Сентября 2009
+157.3
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
function SetStyleForFilterOver(this2) {
this2.style.border = "1px solid #ea0000";
this2.style.color = "white";
this2.style.background = "#404040";
}
function SetStyleForFilterOut(this2) {
this2.style.border = "1px solid #404040";
this2.style.color = "#ea0000";
this2.style.color = "#ea0000";
this2.style.background = "#eeeeee";
}
Тс-с-с-с... Только не говорите автору про css и селектор ":hover" :о)
Ordos,
21 Сентября 2009
+136.4
- 1
- 2
- 3
- 4
// Работаю asp.net программистом.
// Показал главному программисту, как с помощью System.Web.Routing можно легко делать человекопонятные урлы.
// Итог: Теперь у сайта урлы вида http://domain/filterDisks/42/0/14/1.
// Вот сижу и думаю, что значат все эти циферки :'о(
Ordos,
21 Сентября 2009
+135.2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
public string GetDollarKurs(string input)
{
string dol = "[.\\s]*<img height=\"11\" alt=\"Доллар США\" hspace=\"2\" src=\"/images/icon_dollar.gif\" width=\"11\" align=\"left\" vspace=\"2\" border=\"0\">Доллар \r\n\t\t\tСША</td>\r\n\t\t<td></td>\r\n\t\t<td class=\"digit\" align=\"right\">[\\s]*\\d+\\,\\d+[.\\s]*";
MatchCollection Matches = Regex.Matches(input, dol);
if (Matches.Count == 1)
{
string res = Matches[0].Value;
res = res.Trim();
res = res.Substring(res.LastIndexOf('>') + 1);
return res;
}
else
return "";
}
Функция для получения курса доллара, в input подаётся хтмл главной страницы сайта cbr.ru и парсится.
А web-сервисы пусть кто-нибудь другой изучает... :o)
Ordos,
06 Сентября 2009
+127
- 1
- 2
- 3
- 4
if (CProducts.UpdateProductByPartNumber(row.Cells[2].Text, row.Cells[3].Text, Convert.ToDecimal(row.Cells[4].Text), curId, pgId, vendId) != -1)
{
// ...
}
Эх... первый месяц работы программистом я думал что экономить место - это круто :о)
Ordos,
31 Августа 2009