DA0001: Użyj StringBuilder dla relacyjne
Identyfikator reguły |
DA0001 |
Kategoria |
.NET Framework użycia |
Metod profilowania |
Pobieranie próbek Oprzyrządowanie |
Wiadomości |
Rozważ StringBuilder konkatenacje |
Typ wiadomości |
Ostrzeżenie |
Przyczyna
Wywołania System.String.Concat są znaczna część danych profilowania.Należy wziąć pod uwagę przy użyciu StringBuilder klasy do konstruowania ciągi z wielu segmentów.
Opis reguły
A String obiektu jest niezmienne.W związku z tym zmianach do ciągu tworzy nowy obiekt string i kolekcji garbage oryginału.To zachowanie jest taka sama, czy jawnie wywołać String.Concat lub używać operatorów konkatenacji ciąg, takie jak + lub +=.Wydajność programu można zmniejszyć, jeśli te metody są często nazywane, na przykład gdy znaki są dodawane do ciągu w pętli ścisła.
Klasa StringBuilder jest tych obiektów i, w przeciwieństwie do System.String, większość metod na StringBuilder, które modyfikują wystąpienie tej klasy zwraca odwołanie do tego samego wystąpienia.Można wstawić znaki lub dołączanie tekstu do instancji StringBuilder i usunąć lub zastąpić znaki w instancji bez konieczności przydzielania nowych instancji i usuwanie oryginalnego wystąpienia.
Jak do zbadania ostrzeżenie
Kliknij dwukrotnie wiadomość w oknie Lista błędów, aby przejść do Wyświetl szczegóły funkcji pobierania próbek danych profilu.Znajdź sekcje program, które wykorzystują najczęściej konkatenacji ciągów.Dla złożonych ciąg manipulacje, łącznie z operacji konkatenacji częste ciąg, należy użyć klasy StringBuilder.
Aby uzyskać więcej informacji na temat pracy z ciągami znaków Operacje na ciągach sekcji Rozdział 5 - poprawę wydajności kod zarządzany w bibliotece Microsoft desenie i praktyk.