Добавьте это в свой global.asax
private void Application_BeginRequest(object sender, EventArgs e)
{
Context.RewritePath(System.Text.RegularExpressions.Regex.Replace(
Request.Path, "/rest/(.*)/", "/$1.svc/"));
}
Это заменит / rest / Service1 / arg1 / arg2 на /Service1.svc/arg1/arg2
Я только что нашел вот это, написанное в строке перед закомментированной строкой кода:
//This causes a crash for some reason. I know the real reason but it doesn't fit on this line.
Я работаю на двух языках (английском и французском), но мой любимый комментарий был на французском:
/* La passe du coyote qui tousse */
В переводе это выглядело бы примерно так:
/* The coughing coyote trick */
Обычно представлял собой фрагмент кода это либо показалось автору умной идеей и было совершенно неясным, либо это было странное исправление, даже автор не понимал, почему это сработало (подумайте над исправлением состояния гонки, перемещая операторы if). Во всех случаях это был плохо написанный код, который пугал любого, кто должен был провести его рефакторинг, потому что было очень трудно предсказать эффект его изменения.
/// <summary>
/// Disables the web part. (Virtual method)
/// </summary>
public virtual void EnableWebPart() { /* nothing - you have to override it */ }
Чрезмерная избыточность не проясняет, что происходит. Это из прошивки мобильного телефона
/*========================================================================
FUNCTION
DtFld_SetMin
DESCRIPTION
This local function sets a nMin member of the Dtfld struct.
DEPENDENCIES
None
ARGUMENTS
[in]me
Pointer to the Dtfld struct.
[in]val
Value to set
RETURN VALUE
None.
SIDE EFFECTS
None
NOTE
None
========================================================================*/
/**
@brief This local function sets a nMin member of the Dtfld struct..
@param [in] me Pointer to the Dtfld struct.
@param [in]val Value to set
@retval None
@note None
@see None
*/
static __inline void DtFld_SetMin(DtFld *me, int val)
{
me->nMin = val;
}
Мы поддерживаем ужасный беспорядок в PHP-приложении, и у первоначального разработчика была привычка оставлять «отладочный код» закомментированным. Как он всегда говорил, это было потому, что «на случай, если он когда-нибудь снова понадобится, он просто раскомментирует их и вуаля, так что это экономит ему много работы».
Так что все сценарии буквально пронизаны такими строками, как:
//echo "asdfada";
//echo $query."afadfadf";
Ни один из них на самом деле не функционирует в любом случае. Они в основном там, чтобы подтвердить, что выполнение кода достигает этой точки.
В связанной заметке он никогда не удалял ни один устаревший скрипт или таблицу базы данных. Таким образом, у нас есть каталоги, заполненные такими файлами, как dosomething.php, dosomething1.php, dosomething1.bak, dosomething1.bak.php и т. Д. Все боятся что-либо удалять, потому что никто не знает, что на самом деле используется.
add ax,1 ;add 1 to the accumulator
серьезно? этот комментарий потратил 5 секунд моей жизни.
также устаревшие комментарии FTL
//the system can only handle 5 people right now. make sure where not over
if(num_people>20){
Один из самых забавных, с которыми я когда-либо сталкивался.
// HACK HACK HACK. REMOVE THIS ONCE MARLETT IS AROUND
Тот, который заставил меня задуматься.
// this is a comment - don't delete
// yes, this is going to break in 2089, but, one, I'll be dead, and two, we really ought to be using
// a different system by then
if (yearPart >= 89)
{
// naughty bits removed....
}
(Бесполезно в качестве комментариев, но оба являются правдивыми утверждениями.)
Это:
Да, пустое место, оставленное как журнал изменений Subversion.
Натыкался на doozy сегодня. Я должен был ожидать это, учитывая, что это была часть макроса VBA в рабочей книге Excel.
a.writeline s 'write line
Я нашел это особенно очаровательным, что, кто бы ни записал, это заняло время для записи комментария, который использовал пространство для разрешения невероятно сбивающий с толку, смешал команду "writeline", но не считал необходимым использовать значимые имена переменной. Лучше всего я могу сказать короткого для "файла", и s короток для "Строки" (потому что уже взятого).
Еще один, который я помню:
//TODO: This needs to be reworked. THIS CRAP NEEDS TO STOP!!!
Я нашел это в примере приложения для продукта сопоставления:
// Return value does not matter
return 0;
Я нашел это в скрученной программе
# Let them send messages to the world
#del self.irc_PRIVMSG # By deleting the method? Hello?
/**
* Implements the PaymentType interface.
*/
public class PaymentTypePo implements PaymentType
Однажды я наткнулся на эту маленькую красоту в приложении VB.NET
Dim huh as String 'Best name for a variable ever.
Нашел сегодня в середине блока объявлений:
// other variables
Ну и дела, правда? Спасибо.
Однажды я работал с очень талантливым программистом на языке ассемблера, который дополнил базовый набор инструкций ARM рядом макросов. Его код состоял из десятков тысяч инструкций и выглядел примерно так - с макро-инструкциями, которые я (компетентный программист ARM) не мог прочитать, представленными ??? и периодические регулярные инструкции ARM, такие как ADD:
... ??? R0,R0,#1 ??? R0,R1 ADD R0,R0,#6 ; Add 6 ??? R1,R0 ??? R0,R0,R1 ...
Я могу только предположить, что когда ваш мозг размером с планету, он слишком высок, чтобы справиться с этими надоедливыми инструкциями, которые просто чертовски просты.
This is a comment I wrote in a file in my group's final project in college
/* http://youtube.com/watch?v=oHg5SJYRHA0 */
Только сегодня нашел ...
// TODO: this is basically a copy of the code at line 743!!!
A classic that we always joke about at my job (complete with typos):
// Its stupid but it work
This was found multiple times in an old code base.
Мне пришлось исправить ошибку в 2000 строк кода, которая перекодировала звук из GSM в мю-закон (в основном с использованием сдвига битов и массивов значений преобразования). Единственный комментарий в файле находился в верхней части единственного в нем метода. Это было:
/* Do the business */
Однажды я поддерживал код операционной системы, который мы настроили для миникомпьютера Harris (да, это было очень давно). Однажды, просматривая код планировщика (ассемблера), я наткнулся на блок кода, в верхней части которого был комментарий "Begin Magic", а примерно в 25 строках позже - комментарий "End Magic". Код между ними был одним из самых узких, сложных, элегантных кодов, которые я когда-либо видел. Понадобилось 4 из нас, чтобы понять, что на самом деле делал этот маленький участок кода (переключение VM)
.На самом деле у меня есть несколько из них,
// 18042009: (Name here) made me do this
Не очень горжусь этими комментариями, но я сохраняю их, чтобы напомнить мне, почему я написал WTF-код именно в этом разделе, так полезно в этом аспекте.
{Some Code;} // Я не помню, зачем я это делаю, но это работает ...