Самый простой способ - использовать сервис довольно быстро и грязно.
Создайте сервис, содержащий строковую переменную.
import { Injectable } from '@angular/core';
@Injectable()
export class SimpleService {
public text: string = '';
constructor() { }
}
Вы должны импортировать сервис в свой Модуль и предоставить его.
import { ComponentA } from './component-a.ts';
import { ComponentB } from './component-b.ts';
import { SimpleService } from './simple.service.ts';
@NgModule({
declarations: [
ComponentA,
ComponentB
],
imports: [
ComponentA,
ComponentB
],
providers: [
SimpleService
]
})
export class XYZModule { }
Тогда один компонент устанавливает значение, а другой читает его.
Компонент A
import { SimpleService } from './simple.service.ts';
constructor(private simpleService: SimpleService) { }
setText(text: string): {
this.simpleService.text = text;
}
КомпонентB
TS-файл
import { SimpleService } from './simple.service.ts';
constructor(private simpleService: SimpleService) { }
HTML-файл
<p>{{simpleService.text}}</p>
Это все.
IIS 5.1 интерпретирует Ваш URL, таким образом что его поиск папки, названной 1000 под папкой под названием Тест. Почему то, что так?
Это происходит, потому что IIS 6 только вызывает ASP.NET, когда он видит “расширение файла” в URL, это отображается на aspnet_isapi.dll (который является фильтром ISAPI C/C++, ответственным за вызов ASP.NET). Так как маршрутизацией является IHttpModule.NET по имени UrlRoutingModule, это не становится вызванным, если ASP.NET само не вызывается, который только происходит, когда aspnet_isapi.dll вызывается, который только происходит, когда существует .aspx в URL. Так, никакой .aspx, никакой UrlRoutingModule, следовательно 404.
Самое легкое решение:
Если Вы не возражаете иметь .aspx в своих URL, просто проходите свою конфигурацию маршрутизации, добавляя .aspx перед наклонной чертой вправо в каждом шаблоне. Например, используйте {контроллер} .aspx/{действие} / {идентификатор} или myapp.aspx/{контроллер} / {действие} / {идентификатор}. Не помещайте .aspx в названиях параметра фигурной скобки, или в значения 'по умолчанию', потому что это не действительно часть названия контроллера - это находится только в URL для удовлетворения IIS.
Источник: http://blog.codeville.net/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/
Существует много соображений при использовании виртуальных каталогов в приложении.
Каждый конкретен, то, что большинство браузеров не отправит cookie, которые прибыли от одного виртуального каталога до другого, даже если приложения находятся на том же сервере.
Если Вы делаете это на Windows XP, то Вы используете IIS 5.1. Необходимо заставить ASP.NET обрабатывать запрос. Необходимо или добавить расширение маршрутов ({контроллер} .mvc/{действие} / {идентификатор}) и карта, что расширение ASP.NET или отображает все запросы на ASP.NET. http://localhost/Test работает, потому что это переходит к Default.aspx, который обрабатывается особенно в проектах MVC.
Кроме того, необходимо указать http://localhost/Test/Search/Index/1000. Контроллер и части действия не являются дополнительными, если Вы хотите указать идентификатор.
Попробуйте установленный виртуальный путь: щелкните правой кнопкой по mvc проекту, свойства, веб-вкладка, там вводят соответствующее местоположение.